dotfiles commit.

This commit is contained in:
moony 2022-05-04 10:06:36 -07:00
parent 2e530c0d99
commit 34f05dfd1b
782 changed files with 31775 additions and 0 deletions

24
.Xresources Normal file
View File

@ -0,0 +1,24 @@
! Black + DarkGrey
*color0: #1e2127
*color8: #4b5263
! DarkRed + Red
*color1: #be5046
*color9: #e06c75
! DarkGreen + Green
*color2: #98c379
*color10: #98c379
! DarkYellow + Yellow
*color3: #d19a66
*color11: #e5c07b
! DarkBlue + Blue
*color4: #61afef
*color12: #61afef
! DarkMagenta + Magenta
*color5: #c678dd
*color13: #c678dd
! DarkCyan + Cyan
*color6: #56b6c2
*color14: #56b6c2
! LightGrey + White
*color7: #abb2bf
*color15: #ffffff

View File

@ -0,0 +1,128 @@
# alacritty configuration file
env:
TERM: xterm-256color
window:
# window dimensions
dimensions:
columns: 0
lines: 0
# window position
position:
x: 0
y: 0
# window padding
padding:
x: 5
y: 5
# dynamic padding
dynamic_padding: true
# decorations
decorations: none
# window title
title: Alacritty
# window class
class:
instance: Alacritty
general: Alacritty
scrolling:
history: 100000
multiplier: 3
# Font configuration
font:
normal:
family: Fira Code Nerd Font
style: Regular
bold:
family: Fira Code Nerd Font
style: Bold
italic:
family: Fira Code Nerd Font
style: Italic
bold_italic:
family: Fira Code Nerd Font
style: Bold Italic
size: 10
draw_bold_text_with_bright_colors: false
colors:
primary:
background: '#1e2127'
foreground: '#abb2bf'
# normal colors
normal:
black: '#1e2127'
# black: '#282c34'
red: '#be5046'
green: '#98c379'
yellow: '#d19a66'
blue: '#61afef'
magenta: '#c678dd'
cyan: '#56b6c2'
white: '#abb2bf'
# bright colors
bright:
black: '#4b5263'
red: '#e06c75'
green: '#98c379'
yellow: '#e5c07b'
blue: '#61afef'
magenta: '#c678dd'
cyan: '#56b6c2'
white: '#ffffff'
backround_opacity: 1.0
selection:
semantic_escape_chars: ",│`|:\"' ()[]{}<>\t"
save_to_clipboard: true
live_config_reload: true
mouse:
double_click: { threshold: 300 }
triple_click: { threshold: 300 }
# hide_when_type: true
# url:
# launcher:
# program: xdg-open
# args: []
# modifiers: None
mouse_bindings:
- { mouse: Middle, action: PasteSelection }
key_bindings:
- { 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 }
- { key: Paste, action: Paste }
- { key: Copy, action: Copy }
- { key: L, mods: Control, action: ClearLogNotice }
- { key: L, mods: Control, chars: "\f" }
- { 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 }

View File

@ -0,0 +1,133 @@
# alacritty configuration file
env:
TERM: xterm-256color
window:
# window dimensions
dimensions:
columns: 0
lines: 0
# window position
position:
x: 0
y: 0
# window padding
padding:
x: 5
y: 5
# dynamic padding
dynamic_padding: true
decorations: none
# window title
title: Alacritty
# window class
class:
instance: Alacritty
general: Alacritty
scrolling:
history: 100000
multiplier: 3
# Font configuration
font:
normal:
family: JetBrainsMono Nerd Font
style: Regular
bold:
family: JetBrainsMono Nerd Font
style: Bold
italic:
family: JetBrainsMono Nerd Font
style: Italic
bold_italic:
family: JetBrainsMono Nerd Font
style: Bold Italic
size: 10
draw_bold_text_with_bright_colors: false
colors:
primary:
# background: '#1E2127'
background: '0x282c34'
foreground: '0xabb2bf'
# cursor:
# text: '0x282c34'
# cursor: '0xabb2bf'
# Normal colors
normal:
# black: '0x1e2127'
black: '0x282c34'
red: '0xe06c75'
green: '0x98c379'
# yellow: '0xe5c07b'
yellow: '0xd19a66'
blue: '0x61afef'
magenta: '0xc678dd'
cyan: '0x56b6c2'
white: '0xabb2bf'
# Bright colors
bright:
black: '0x5c6370'
red: '0xe06c75'
green: '0x353b45'
yellow: '0xd19a66'
blue: '0x61afef'
magenta: '0xc678dd'
cyan: '0x56b6c2'
white: '0xffffff'
backround_opacity: 1.0
selection:
semantic_escape_chars: ",│`|:\"' ()[]{}<>\t"
save_to_clipboard: true
live_config_reload: true
mouse:
double_click: { threshold: 300 }
triple_click: { threshold: 300 }
# hide_when_type: true
# url:
# launcher:
# program: xdg-open
# args: []
# modifiers: None
mouse_bindings:
- { mouse: Middle, action: PasteSelection }
key_bindings:
- { 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 }
- { key: Paste, action: Paste }
- { key: Copy, action: Copy }
- { key: L, mods: Control, action: ClearLogNotice }
- { key: L, mods: Control, chars: "\f" }
- { 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 }

163
.config/cava/config Normal file
View File

@ -0,0 +1,163 @@
## Configuration file for CAVA. Default values are commented out. Use either ';' or '#' for commenting.
[general]
# Smoothing mode. Can be 'normal', 'scientific' or 'waves'. DEPRECATED as of 0.6.0
; mode = normal
# Accepts only non-negative values.
; framerate = 60
# 'autosens' will attempt to decrease sensitivity if the bars peak. 1 = on, 0 = off
# new as of 0.6.0 autosens of low values (dynamic range)
# 'overshoot' allows bars to overshoot (in % of terminal height) without initiating autosens. DEPRECATED as of 0.6.0
; autosens = 1
; overshoot = 20
# Manual sensitivity in %. Autosens must be turned off for this to take effect.
# 200 means double height. Accepts only non-negative values.
; sensitivity = 100
# The number of bars (0-200). 0 sets it to auto (fill up console).
# Bars' width and space between bars in number of characters.
bars = 0
bar_width = 1
bar_spacing = 1
# Lower and higher cutoff frequencies for lowest and highest bars
# the bandwidth of the visualizer.
# Note: there is a minimum total bandwidth of 43Mhz x number of bars.
# Cava will automatically increase the higher cutoff if a too low band is specified.
; lower_cutoff_freq = 50
; higher_cutoff_freq = 10000
# FFT buffer is set in the exponent of 2 and must be between 8 - 16, 8 = 256, 16 = 65536
# this is the audio buffer used to create the spectrum
# increasing the will improve the accuracy of the visualization,
# but will also make it slower and increase CPU usage
# anything below 10 and above 13 is considered experimental.
; FFTbufferSize = 12;
[input]
# Audio capturing method. Possible methods are: 'pulse', 'alsa', 'fifo', 'sndio' or 'shmem'
# Defaults to 'pulse', 'alsa' or 'fifo', in that order, dependent on what support cava was built with.
#
# All input methods uses the same config variable 'source'
# to define where it should get the audio.
#
# For pulseaudio 'source' will be the source. Default: 'auto', which uses the monitor source of the default sink
# (all pulseaudio sinks(outputs) have 'monitor' sources(inputs) associated with them).
#
# For alsa 'source' will be the capture device.
# For fifo 'source' will be the path to fifo-file.
# For shmem 'source' will be /squeezelite-AA:BB:CC:DD:EE:FF where 'AA:BB:CC:DD:EE:FF' will be squeezelite's MAC address
; method = pulse
; source = auto
; method = alsa
; source = hw:Loopback,1
; method = fifo
; source = /tmp/mpd.fifo
; method = shmem
; source = /squeezelite-AA:BB:CC:DD:EE:FF
[output]
# Output method. Can be 'ncurses', 'noncurses' or 'raw'.
# 'noncurses' is for systems that does not support ncurses.
# 'raw' is an 8 or 16 bit (configurable via the 'bit_format' option) data
# stream of the bar heights that can be used to send to other applications.
# 'raw' defaults to 200 bars, which can be adjusted in the 'bars' option above.
; method = ncurses
# Visual channels. Can be 'stereo' or 'mono'.
# 'stereo' mirrors both channels with low frequencies in center.
# 'mono' averages both channels and outputs left to right lowest to highest frequencies.
channels = mono
# Raw output target. A fifo will be created if target does not exist.
; raw_target = /dev/stdout
# Raw data format. Can be 'binary' or 'ascii'.
; data_format = binary
# Binary bit format, can be '8bit' (0-255) or '16bit' (0-65530).
; bit_format = 16bit
# Ascii max value. In 'ascii' mode range will run from 0 to value specified here
; ascii_max_range = 1000
# Ascii delimiters. In ascii format each bar and frame is separated by a delimiters.
# Use decimal value in ascii table (i.e. 59 = ';' and 10 = '\n' (line feed)).
; bar_delimiter = 59
; frame_delimiter = 10
[color]
# Colors can be one of seven predefined: black, blue, cyan, green, magenta, red, white, yellow.
# Or defined by hex code '#xxxxxx' (hex code must be within ''). User defined colors requires a
# terminal that can change color definitions such as Gnome-terminal or rxvt.
background = '#1e2127'
; foreground = WHITE
BLACK = '#1e2127'
RED = '#e06c75'
GREEN = '#98c379'
YELLOW = '#d19a66'
BLUE = '#61afef'
MAGENTA = '#c678dd'
CYAN = '#56b6c2'
WHITE = '#abb2bf'
# Gradient mode, only hex defined colors are supported, background must also be defined in hex
# or remain commented out. 1 = on, 0 = off. Warning: for certain terminal emulators cava will
# not able to restore color definitions on exit, simply restart your terminal to restore colors.
gradient = 1
gradient_count = 5
gradient_color_1 = '#61afef'
gradient_color_2 = '#98c379'
gradient_color_3 = '#d19a66'
gradient_color_4 = '#be5046'
gradient_color_5 = '#c678dd'
[smoothing]
# Percentage value for integral smoothing. Takes values from 0 - 100.
# Higher values means smoother, but less precise. 0 to disable.
; integral = 70
# Disables or enables the so-called "Monstercat smoothing" with or without "waves". Set to 0 to disable.
monstercat = 1
; waves = 0;
# Set gravity percentage for "drop off". Higher values means bars will drop faster.
# Accepts only non-negative values. 50 means half gravity, 200 means double. Set to 0 to disable "drop off".
; gravity = 100
# In bar height, bars that would have been lower that this will not be drawn.
; ignore = 0
[eq]
# This one is tricky. You can have as much keys as you want.
# Remember to uncomment more then one key! More keys = more precision.
# Look at readme.md on github for further explanations and examples.
; 1 = 1 # bass
; 2 = 1
; 3 = 1 # midtone
; 4 = 1
; 5 = 1 # treble

110
.config/dunst/dunstrc Normal file
View File

@ -0,0 +1,110 @@
[global]
monitor = 0
follow = mouse
geometry = "320x50-40+30"
indicate_hidden = yes
shrink = yes
transparency = 10
notification_height = 0
separator_height = 2
separator_color = frame
padding = 8
horizontal_padding = 8
frame_width = 2
frame_color = "#56B6C2"
corner_radius = 8
sort = yes
idle_threshold = 200
font = Fira Code Nerd Font 10
line_height = 2
markup = full
format = "<small>%a</small>\n<b>%s</b>\n%b"
/* format = "%a\n<b>%s</b>\n%b" */
alignment = center
show_age_threshold = 60
word_wrap = yes
ignore_newline = no
stack_duplicates = true
hide_duplicate_count = false
show_indicators = yes
icon_position = on
max_icon_size = 32
icon_folders = /usr/share/icons/Arc/status/16/:/usr/share/icons/Arc/devices/16/
sticky_history = yes
history_length = 20
dmenu = /usr/bin/dmenu -p dunst:
browser = /usr/bin/firefox-developer-edition -new-tab
always_run_script = true
title = Dunst
class = Dunst
startup_notification = false
force_xinerama = false
# Experimental features that may or may not work correctly. Do not expect them
# to have a consistent behaviour across releases.
[experimental]
# Calculate the dpi to use on a per-monitor basis.
# If this setting is enabled the Xft.dpi value will be ignored and instead
# dunst will attempt to calculate an appropriate dpi value for each monitor
# using the resolution and physical size. This might be useful in setups
# where there are multiple screens with very different dpi values.
per_monitor_dpi = false
[shortcuts]
# Shortcuts are specified as [modifier+][modifier+]...key
# Available modifiers are "ctrl", "mod1" (the alt-key), "mod2",
# "mod3" and "mod4" (windows-key).
# Xev might be helpful to find names for keys.
# Close notification.
close = ctrl+space
# Close all notifications.
close_all = ctrl+shift+space
# Redisplay last message(s).
# On the US keyboard layout "grave" is normally above TAB and left
# of "1". Make sure this key actually exists on your keyboard layout,
# e.g. check output of 'xmodmap -pke'
history = ctrl+grave
# Context menu.
context = ctrl+shift+period
[urgency_low]
# IMPORTANT: colors have to be defined in quotation marks.
# Otherwise the "#" and following would be interpreted as a comment.
#background = "#403560"
background = "#1E2127"
foreground = "#ABB2BF"
frame_color = "#56B6C2"
timeout = 2.5
icon = /usr/share/icons/Arc/status/16/messagebox_info.png
[urgency_normal]
#background = "#403560"
background = "#1E2127"
foreground = "#ABB2BF"
frame_color = "#56B6C2"
timeout = 5
icon = /usr/share/icons/Arc/status/16/messagebox_info.png
#icon = /usr/share/icons/Papirus-Dark/16x16/status/:/usr/share/icons/Papirus-Dark/16x16/devices/
[urgency_critical]
background = "#1E2127"
foreground = "#ABB2BF"
frame_color = "#E06C75"
timeout = 10
icon = /usr/share/icons/Arc/status/16/messagebox_critical.png
#icon = /usr/share/icons/Papirus-Dark/16x16/status/:/usr/share/icons/Papirus-Dark/16x16/devices/

359
.config/i3/config Normal file
View File

@ -0,0 +1,359 @@
# MOONY's I3 CONFIGURATION
### KEY DEFINITIONS ###
# Mod = WINDOWS key or SUper key or Mod4
# Mod1 = ALT key
# Control = CTRL key
# Shift = SHIFT key
# Escape = ESCAPE key
# Return = ENTER or RETURN key
# KP_Enter = Keypad Enter
# Pause = PAUSE key
# Print = PRINT key
# Tab = TAB key
### SET MOVEMENT ###
# META KEY
set $mod Mod4
# MOVEMENT
set $up l
set $down k
set $left j
set $right semicolon
# ASSIGN WORKSPACE DISPLAYS
set $LMonitor HDMI-0
set $MMonitor DP-0
set $RMonitor DVI-D-0
# MONITOR LAYOUT
# exec --no-startup-id xrandr --output $RMonitor --mode 1600x900 --pos 3840x0 --rotate normal --output $LMonitor --mode 1680x1050 --pos 0x0 --rotate normal --output DP-0 --off --output $MMonitor --primary --mode 1920x1080 --pos 1920x0 --rotate normal
exec --no-startup-id source ~/.screenlayout/screenlayout.sh
# ASSIGN WORKSPACE NUMBER
set $ws1 "1"
set $ws2 "2"
set $ws3 "3"
set $ws4 "4"
set $ws5 "5"
set $ws6 "6"
set $ws7 "7"
set $ws8 "8"
set $ws9 "9"
set $ws10 "10"
# ASSIGN WORKSPACES TO MONITORS
workspace $ws1 output $LMonitor
workspace $ws2 output $LMonitor
workspace $ws3 output $LMonitor
workspace $ws4 output $MMonitor
workspace $ws5 output $MMonitor
workspace $ws6 output $MMonitor
workspace $ws7 output $RMonitor
workspace $ws8 output $RMonitor
workspace $ws9 output $RMonitor
workspace $ws10 output $RMonitor
# SWITCH TO WORKSPACE
bindsym $mod+1 workspace $ws1
bindsym $mod+2 workspace $ws2
bindsym $mod+3 workspace $ws3
bindsym $mod+4 workspace $ws4
bindsym $mod+5 workspace $ws5
bindsym $mod+6 workspace $ws6
bindsym $mod+7 workspace $ws7
bindsym $mod+8 workspace $ws8
bindsym $mod+9 workspace $ws9
bindsym $mod+0 workspace $ws10
# MOVE FOCUSED CONTAINER TO WORKSPACE
bindsym $mod+Shift+1 move container to workspace $ws1; workspace $ws1
bindsym $mod+Shift+2 move container to workspace $ws2; workspace $ws2
bindsym $mod+Shift+3 move container to workspace $ws3; workspace $ws3
bindsym $mod+Shift+4 move container to workspace $ws4; workspace $ws4
bindsym $mod+Shift+5 move container to workspace $ws5; workspace $ws5
bindsym $mod+Shift+6 move container to workspace $ws6; workspace $ws6
bindsym $mod+Shift+7 move container to workspace $ws7; workspace $ws7
bindsym $mod+Shift+8 move container to workspace $ws8; workspace $ws8
bindsym $mod+Shift+9 move container to workspace $ws9; workspace $ws9
bindsym $mod+Shift+0 move container to workspace $ws10; workspace $ws10
### APPLICATION CONTROL ###
# LAUNCH ALACRITTY
bindsym $mod+Return exec --no-startup-id alacritty
# LAUNCH ALACRITTY IN CWD
bindsym $mod+Shift+Return exec --no-startup-id alacritty --working-directory `xcwd`
# LAUNCH ROFI LAUNCHER
bindsym $mod+d exec --no-startup-id $HOME/.config/rofi/launchers/colorful/launcher.sh
# LAUNCH SCREENSHOT APPLET
bindsym Print exec --no-startup-id $HOME/.config/rofi/applets/applets/screenshot.sh
# LAUNCH FIREFOX
bindsym $mod+F2 exec --no-startup-id i3-msg 'workerspace $ws6; exec firefox-developer-edition
# LAUNCH THUNDERBIRD
bindsym $mod+F3 exec --no-startup-id i3-msg 'workspace $ws7; exec thunderbird
# LAUNCH CALCULATOR
#bindsym F12 exec --no-startup-id galculator
### MUSIC CONTROL ###
# VIEW VOLUME APPLET
bindsym Control+Mod1+N exec --no-startup-id $HOME/.config/rofi/applets/applets/volume.sh
# LAUNCH SPOTIFY
bindsym $mod+F1 exec --no-startup-id i3-msg workspace $ws5; exec spotify
# PLAY/PAUSE
bindsym XF86AudioPlay exec --no-startup-id playerctl -p spotify play-pause
bindsym Control+Shift+p exec --no-startup-id playerctl -p spotify play-pause
# STOP
bindsym XF86AudioStop exec --no-startup-id playerctl -p spotify stop
bindsym Control+Shift+s exec --no-startup-id playerctl -p spotify stop
# NEXT
bindsym XF86AudioNext exec --no-startup-id playerctl -p spotify next
bindsym Control+Shift+n exec --no-startup-id playerctl -p spotify next
# PREVIOUS
bindsym XF86AudioPrev exec --no-startup-id playerctl -p spotify previous
bindsym Control+Shift+l exec --no-startup-id playerctl -p spotify previous
# VOLUME UP
bindsym XF86AudioRaiseVolume exec --no-startup-id i3-volume -n up 5
# VOLUME DOWN
bindsym XF86AudioLowerVolume exec --no-startup-id i3-volume -n down 5
# VOLUME MUTE/UNMUTE
bindsym XF86AudioMute exec --no-startup-id i3-volume -n mute
### POWER POLICY CONTROL ###
# OPEN POWERCONTROL MENU
bindsym Control+Mod1+Delete exec .config/rofi/applets/applets/powermenu.sh
# RELOAD MODIFIED CONFIGURATION
bindsym $mod+Shift+r restart
# RELOAD CONFIGURATION FILE
bindsym $mod+Shift+c reload
# KILL FOCUSED WINDOW
bindsym $mod+Shift+q kill
bindsym --whole-window $mod+button2 kill
# USE MOD + MOUES TO DRAG FLOATING WINDOW
floating_modifier $mod
# TOGGLE TILING/FLOATING
bindsym $mod+Shift+space floating toggle
# CHANGE WORKSPACE FOCUS
bindsym $mod+$left focus left
bindsym $mod+$down focus down
bindsym $mod+$up focus up
bindsym $mod+$right focus right
# CHANGE WORKSPACE FOCUS WITH CURSOR KEYS
bindsym $mod+Left focus left
bindsym $mod+Down focus down
bindsym $mod+Up focus up
bindsym $mod+Right focus right
# MOVE FOCUSED WINDOW
bindsym $mod+Shift+$left move left
bindsym $mod+Shift+$down move down
bindsym $mod+Shift+$up move up
bindsym $mod+Shift+$right move right
# MOVE FOCUSED WINDOW WITH CURSOR KEYS
bindsym $mod+Shift+Left move left
bindsym $mod+Shift+Down move down
bindsym $mod+Shift+Up move up
bindsym $mod+Shift+Right move right
### WORKSPACE NAVIGATION ###
# URGENCY HINT DELAY
force_display_urgency_hint 500 ms
# NEXT/PREVIOUS WORKSPACE
workspace_auto_back_and_forth yes
# NAVIGATE NEXT/PREVIOUS WORKSPACES
bindsym Mod1+Ctrl+Right workspace next
bindsym Mod1+Ctrl+Left workspace prev
# SWITCH TO URGENT WORKSPACE/WINDOW AUTOMATICALLY
# for_window [urgent="latest"] focus
# bindsym $mod+x [urgent="latest"] focus
### TILING PARAMETERS ###
# ORIENTATION FOR NEW WINDOWS
default_orientation horizontal
# SPLIT HORIZONTALLY
bindsym $mod+h split h
# SPLIT VERTICALLY
bindsym $mod+v split v
# TOGGLE FULLSCREEN FOR SELECTED CONTAINER
bindsym $mod+f fullscreen toggle
# CHANGE WINDOW LAYOUT
bindsym $mod+s layout stacking
bindsym $mod+z layout tabbed
bindsym $mod+e layout toggle split
# CHANGE FOCUS BETWEEN FLOATING AND TILING
bindsym $mod+space focus mode_toggle
# FOCUS THE PARENT CONTAINER
bindsym $mod+a focus parent
### RESIZE ###
bindsym $mod+r mode "resize"
# RESIZE SELECTED CONTAINER
mode "resize" {
bindsym $left resize shrink width 10 px or 10 ppt
bindsym $down resize grow height 10 px or 10 ppt
bindsym $up resize shrink height 10px or 10 ppt
bindsym $right resize grow width 10 px or 10 ppt
# RESIZE WITH ARROW KEYS
bindsym Left resize shrink width 10 px or 10 ppt
bindsym Down resize grow width 10 px or 10 ppt
bindsym Up resize shrink width 10 px or 10 ppt
bindsym Right resize grow width 10 px or 10 ppt
# RESET BACK TO NORMAL
bindsym Return mode "default"
bindsym Escape mode "default"
}
### CHOOSE THE FONT ###
font pango:Fira Code Nerd Font 10
### ASSIGN APPLICATIONS TO WORKSPACES
# you can find the class with the program xprop
# WORKSPACE 1
# assign [class="Firefox"] → 1
# assign [class="game.exe"] focus mode_toggle
# WORKSPACE 2
# assign [class="firefox|Firefox"] → 2
# WORKSPACE 3
# → 3
# WORKSPACE 4
# assign [class="Vmplayer|VirtualBox"] → 4
# WORKSPACE 5
assign [class="spotify|Spotify"] 5
for_window [class="spotify|Spotify"] move to workspace $ws5
# WORKSPACE 6
assign [class="Navigator|firefoxdeveloperedition"] $ws6
# for_window [class="Navigator|firefoxdeveloperedition"] move to workspace $ws6
# WORKSPACE 7
assign [class="Thunderbird|thunderbird"] $ws7
# for_window [class="Thunderbird|thunderbird"] move to workspace 7
# WORKSPACE 8
#assign [class="GlowingBear|glowingbear|Glowing Bear|glowing bear"] → 8
#for_window [class="GlowingBear|glowingbear|Glowing Bear|glowing bear|Glowingbear"] move to workspace 8
# WORKSPACE 9
assign [class="Nheko|nheko"] $ws9
# for_window [class="Nheko|nheko"] move to workspace 9
# WORKSPACE 10
# assign [class="Thunderbird|thunderbird"] 7
# for_window [class="Thunderbird|thunderbird"] move to workspace 7
### STARTUP APPLICATIONS ###
# PICOM
exec --no-startup-id picom --experimental-backend --blur-background --blur-method dual_kawase --blur-strength 10 --backend glx -m .75 -b -f
# FLASHFOCUS
exec_always --no-startup-id flashfocus
# POLYBAR
exec_always --no-startup-id $HOME/.config/polybar/launch.sh
# DUNST
exec --no-startup-id dunst -config $HOME/.config/dunst/dunstrc
# AUTOTILING
exec_always --no-startup-id /usr/bin/autotiling
# FEH
exec --no-startup-id feh --bg-fill $HOME/Pictures/wallpapers/sexy_arch.jpg
# UNCLUTTER
exec --no-startup-id unclutter --timeout 2.5 --start-hidden
# MULLVAD
exec --no-startup-id mullvad-vpn
### ASSIGN FLOATING WINDOWS ###
# PAVUCONTROL
for_window [class="Pavucontrol" instance="pavucontrol"] floating enable
# LXAPPEARANCE
for_Window [class="lxappearance|Lxappearance" instance="lxappearance|Lxappearance"] floating enable
### POPUPS CONTROL ###
popup_during_fullscreen smart
### I3WM GAPS NEXT ###
for_window [class="^.*"] border pixel 0
new_window pixel
gaps inner 10
gaps outer 5
smart_borders on
smart_gaps on
# THEME/COLORSCHEME
set $base00 #1e2127
set $base01 #be5046
set $base02 #98c379
set $base03 #d19a66
set $base04 #61afef
set $base05 #c678dd
set $base06 #56b6c2
set $base07 #abb2bf
set $base08 #5c5370
set $base09 #e06c75
set $base0A #98c379
set $base0B #e5c07b
set $base0C #61afef
set $base0D #c678dd
set $base0E #56b6c2
set $base0F #ffffff
# set $base0F #c46f59
# Property Name Border BG Text Indicator Child Border
# client.focused $base05 $base0D $base00 $base0D $base0C
client.focused $base0D $base0D $base00 $base0D $base0D
client.focused_inactive $base01 $base01 $base05 $base03 $base01
client.unfocused $base01 $base00 $base05 $base01 $base01
client.urgent $base08 $base08 $base00 $base08 $base08
client.placeholder $base00 $base00 $base05 $base00 $base00
client.background $base00

24
.config/i3/includes/bar Normal file
View File

@ -0,0 +1,24 @@
bar {
# verbose yes
status_command i3status
position top
height 24
mode hide
modifier $mod
strip_workspace_numbers yes
separator_symbol "·"
tray_output primary
tray_padding 2
font pango:SauceCodePro Nerd Font 10.5
colors {
statusline $colorf
background $colorb
separator $colorf
# BORDER BACKGROUND TEXT
focused_workspace $color5 $color8 $colorf
inactive_workspace $colorb $colorb $colorf
active_workspace $color8 $color8 $colorf
urgent_workspace $color8 $color1 $colorb
binding_mode $color8 $color5 $colorb
}
}

30
.config/i3/includes/color Normal file
View File

@ -0,0 +1,30 @@
set $transp #00000000
# Set colors from Xresources (pywal colors)
# NOTE: The secondary rgb color in the lines below is the fallback if
# i3 fails to get colors from Xresources.
set_from_resource $colorf i3wm.foreground #abb2bf
set_from_resource $colorb i3wm.background #1e2127
set_from_resource $color0 i3wm.color0 #353b45
set_from_resource $color1 i3wm.color1 #e06c75
set_from_resource $color2 i3wm.color2 #98c379
set_from_resource $color3 i3wm.color3 #d19a66
set_from_resource $color4 i3wm.color4 #61afef
set_from_resource $color5 i3wm.color5 #c678dd
set_from_resource $color6 i3wm.color6 #56b6c2
set_from_resource $color7 i3wm.color7 #b6bdca
set_from_resource $color8 i3wm.color8 #3e4451
set_from_resource $color9 i3wm.color9 #e06c75
set_from_resource $color10 i3wm.color10 #98c379
set_from_resource $color11 i3wm.color11 #e5c07b
set_from_resource $color12 i3wm.color12 #61afef
set_from_resource $color13 i3wm.color13 #c678dd
set_from_resource $color14 i3wm.color14 #56b6c2
set_from_resource $color15 i3wm.color15 #c8ccd4
# class border backgr. text indicator child_border
client.focused $color5 $color13 $colorf $color1 $colorf
client.focused_inactive $color7 $color4 $colorf $color1 $transp
client.unfocused $color7 $color8 $color7 $color1 $transp
client.urgent $color5 $color1 $color0 $color1 $transp
client.background $transp

View File

@ -0,0 +1 @@
for_Window [class="Pavucontrol" instance="pavucontrol"] floating enable

6
.config/i3/includes/gaps Normal file
View File

@ -0,0 +1,6 @@
smart_gaps on
smart_borders on
default_border pixel 2
default_floating_border pixel 2
gaps inner 4
gaps outer 0

View File

@ -0,0 +1,8 @@
mode "resize" {
bindsym Left resize shrink width 10 px or 5 ppt
bindsym Down resize grow height 10 px or 5 ppt
bindsym Up resize shrink height 10 px or 5 ppt
bindsym Right resize grow width 10 px or 5 ppt
bindsym Return mode "default"
bindsym Escape mode "default"
}

View File

View File

213
.config/i3/old_config Normal file
View File

@ -0,0 +1,213 @@
# This file has been auto-generated by i3-config-wizard(1).
# It will not be overwritten, so edit it as you like.
#
# Should you change your keyboard layout some time, delete
# this file and re-run i3-config-wizard(1).
#
# i3 config file (v4)
#
# Please see https://i3wm.org/docs/userguide.html for a complete reference!
set $mod Mod4
# Font for window titles. Will also be used by the bar unless a different font
# is used in the bar {} block below.
font pango:Anonymice Nerd Font 10.5
# This font is widely installed, provides lots of unicode glyphs, right-to-left
# text rendering and scalability on retina/hidpi displays (thanks to pango).
#font pango:DejaVu Sans Mono 8
# Start XDG autostart .desktop files using dex. See also
# https://wiki.archlinux.org/index.php/XDG_Autostart
#exec --no-startup-id dex --autostart --environment i3
# The combination of xss-lock, nm-applet and pactl is a popular choice, so
# they are included here as an example. Modify as you see fit.
# xss-lock grabs a logind suspend inhibit lock and will use i3lock to lock the
# screen before suspend. Use loginctl lock-session to lock your screen.
#exec --no-startup-id xss-lock --transfer-sleep-lock -- i3lock --nofork
# NetworkManager is the most popular way to manage wireless networks on Linux,
# and nm-applet is a desktop environment-independent system tray GUI for it.
#exec --no-startup-id nm-applet
set $dir $HOME/.config/i3/includes
# load color config
include $dir/color
exec --no-startup-id $HOME/.screenlayout/screenlayout.sh
exec --no-stratup-id feh --bg-fill $HOME/Pictures/wallpapers/arch_illuminati.jpg
set $LMonitor=HDMI-0
set $MMonitor=DP-1
set $RMonitor=DVI-D-0
smart_borders on
# Autotiling
exec --no-startup-id /usr/bin/autotiling
# Picom
exec --no-startup-id picom
# Flashfocus
exec --no-startup-id flashfocus
# Unclutter
exec --no-startup-id unclutter
# Use pactl to adjust volume in PulseAudio.
set $refresh_i3status killall -SIGUSR1 i3status
bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +10% && $refresh_i3status
bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ -10% && $refresh_i3status
bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ toggle && $refresh_i3status
bindsym XF86AudioMicMute exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ toggle && $refresh_i3status
# Use Mouse+$mod to drag floating windows to their wanted position
floating_modifier $mod
# start a terminal
bindsym $mod+Return exec alacritty
# kill focused window
bindsym $mod+Shift+q kill
# start dmenu (a program launcher)
#bindsym $mod+d exec --no-startup-id dmenu_run
# A more modern dmenu replacement is rofi:
bindcode $mod+40 exec "rofi -modi drun,run -show drun"
# There also is i3-dmenu-desktop which only displays applications shipping a
# .desktop file. It is a wrapper around dmenu, so you need that installed.
# bindcode $mod+40 exec --no-startup-id i3-dmenu-desktop
# change focus
bindsym $mod+j focus left
bindsym $mod+k focus down
bindsym $mod+l focus up
bindsym $mod+semicolon focus right
# alternatively, you can use the cursor keys:
bindsym $mod+Left focus left
bindsym $mod+Down focus down
bindsym $mod+Up focus up
bindsym $mod+Right focus right
# move focused window
bindsym $mod+Shift+j move left
bindsym $mod+Shift+k move down
bindsym $mod+Shift+l move up
bindsym $mod+Shift+semicolon move right
# alternatively, you can use the cursor keys:
bindsym $mod+Shift+Left move left
bindsym $mod+Shift+Down move down
bindsym $mod+Shift+Up move up
bindsym $mod+Shift+Right move right
# split in horizontal orientation
bindsym $mod+h split h
# split in vertical orientation
bindsym $mod+v split v
# enter fullscreen mode for the focused container
bindsym $mod+f fullscreen toggle
# change container layout (stacked, tabbed, toggle split)
bindsym $mod+s layout stacking
bindsym $mod+w layout tabbed
bindsym $mod+e layout toggle split
# toggle tiling / floating
bindsym $mod+Shift+space floating toggle
# change focus between tiling / floating windows
bindsym $mod+space focus mode_toggle
# focus the parent container
bindsym $mod+a focus parent
# focus the child container
#bindsym $mod+d focus child
# Define names for default workspaces for which we configure key bindings later on.
# We use variables to avoid repeating the names in multiple places.
set $ws1 "1"
set $ws2 "2"
set $ws3 "3"
set $ws4 "4"
set $ws5 "5"
set $ws6 "6"
set $ws7 "7"
set $ws8 "8"
set $ws9 "9"
set $ws10 "10"
# switch to workspace
bindsym $mod+1 workspace number $ws1
bindsym $mod+2 workspace number $ws2
bindsym $mod+3 workspace number $ws3
bindsym $mod+4 workspace number $ws4
bindsym $mod+5 workspace number $ws5
bindsym $mod+6 workspace number $ws6
bindsym $mod+7 workspace number $ws7
bindsym $mod+8 workspace number $ws8
bindsym $mod+9 workspace number $ws9
bindsym $mod+0 workspace number $ws10
# move focused container to workspace
bindsym $mod+Shift+1 move container to workspace number $ws1
bindsym $mod+Shift+2 move container to workspace number $ws2
bindsym $mod+Shift+3 move container to workspace number $ws3
bindsym $mod+Shift+4 move container to workspace number $ws4
bindsym $mod+Shift+5 move container to workspace number $ws5
bindsym $mod+Shift+6 move container to workspace number $ws6
bindsym $mod+Shift+7 move container to workspace number $ws7
bindsym $mod+Shift+8 move container to workspace number $ws8
bindsym $mod+Shift+9 move container to workspace number $ws9
bindsym $mod+Shift+0 move container to workspace number $ws10
# reload the configuration file
bindsym $mod+Shift+c reload
# restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
bindsym $mod+Shift+r restart
# exit i3 (logs you out of your X session)
bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -B 'Yes, exit i3' 'i3-msg exit'"
# resize window (you can also use the mouse for that)
mode "resize" {
# These bindings trigger as soon as you enter the resize mode
# Pressing left will shrink the windows width.
# Pressing right will grow the windows width.
# Pressing up will shrink the windows height.
# Pressing down will grow the windows height.
bindsym j resize shrink width 10 px or 10 ppt
bindsym k resize grow height 10 px or 10 ppt
bindsym l resize shrink height 10 px or 10 ppt
bindsym semicolon resize grow width 10 px or 10 ppt
# same bindings, but for the arrow keys
bindsym Left resize shrink width 10 px or 10 ppt
bindsym Down resize grow height 10 px or 10 ppt
bindsym Up resize shrink height 10 px or 10 ppt
bindsym Right resize grow width 10 px or 10 ppt
# back to normal: Enter or Escape or $mod+r
bindsym Return mode "default"
bindsym Escape mode "default"
bindsym $mod+r mode "default"
}
bindsym $mod+r mode "resize"
# Start i3bar to display a workspace bar (plus the system information i3status
# finds out, if available)
bar {
status_command i3status
}

53
.config/kitty/kitty.conf Executable file
View File

@ -0,0 +1,53 @@
# padding
window_padding_width 5
# style
cursor_shape block
enable_audio_bell no
visual_alert_on_bell no
# font
font_family Fira Code Nerd Font
font_size 10
# cursor #ffffff
background_opacity 1.0
foreground #abb2bf
background #1e2127
# cursor #cac8dc
# black
color0 #1e2127
color8 #4b5263
# red
color1 #be5046
color9 #e06c75
# green
color2 #98c379
color10 #98c379
# yellow
color3 #d19a66
color11 #e5c07b
# blue
color4 #61afef
color12 #61afef
# magenta
color5 #c678dd
color13 #c678dd
#cyan
color6 #56b6c2
color14 #56b6c2
#white
color7 #abb2bf
color15 #ffffff

174
.config/lvim/config.lua Normal file
View File

@ -0,0 +1,174 @@
--[[
lvim is the global options object
Linters should be
filled in as strings with either
a global executable or a path to
an executable
]]
-- THESE ARE EXAMPLE CONFIGS FEEL FREE TO CHANGE TO WHATEVER YOU WANT
-- general
lvim.log.level = "warn"
lvim.format_on_save = true
lvim.colorscheme = "onedarker"
lvim.format_on_save = false
-- keymappings [view all the defaults by pressing <leader>Lk]
lvim.leader = "space"
-- add your own keymapping
lvim.keys.normal_mode["<C-s>"] = ":w<cr>"
-- unmap a default keymapping
-- lvim.keys.normal_mode["<C-Up>"] = false
-- edit a default keymapping
-- lvim.keys.normal_mode["<C-q>"] = ":q<cr>"
-- Change Telescope navigation to use j and k for navigation and n and p for history in both input and normal mode.
-- we use protected-mode (pcall) just in case the plugin wasn't loaded yet.
-- local _, actions = pcall(require, "telescope.actions")
-- lvim.builtin.telescope.defaults.mappings = {
-- -- for input mode
-- i = {
-- ["<C-j>"] = actions.move_selection_next,
-- ["<C-k>"] = actions.move_selection_previous,
-- ["<C-n>"] = actions.cycle_history_next,
-- ["<C-p>"] = actions.cycle_history_prev,
-- },
-- -- for normal mode
-- n = {
-- ["<C-j>"] = actions.move_selection_next,
-- ["<C-k>"] = actions.move_selection_previous,
-- },
-- }
-- Use which-key to add extra bindings with the leader-key prefix
lvim.builtin.which_key.mappings["P"] = { "<cmd>Telescope projects<CR>", "Projects" }
lvim.builtin.which_key.mappings["t"] = {
name = "+Trouble",
r = { "<cmd>Trouble lsp_references<cr>", "References" },
f = { "<cmd>Trouble lsp_definitions<cr>", "Definitions" },
d = { "<cmd>Trouble document_diagnostics<cr>", "Diagnostics" },
q = { "<cmd>Trouble quickfix<cr>", "QuickFix" },
l = { "<cmd>Trouble loclist<cr>", "LocationList" },
w = { "<cmd>Trouble workspace_diagnostics<cr>", "Wordspace Diagnostics" },
}
-- TODO: User Config for predefined plugins
-- After changing plugin config exit and reopen LunarVim, Run :PackerInstall :PackerCompile
lvim.builtin.alpha.active = true
lvim.builtin.alpha.mode = "dashboard"
lvim.builtin.notify.active = true
lvim.builtin.terminal.active = true
lvim.builtin.dap.active = true
lvim.builtin.nvimtree.setup.view.side = "left"
lvim.builtin.nvimtree.show_icons.git = 1
-- if you don't want all the parsers change this to a table of the ones you want
lvim.builtin.treesitter.ensure_installed = {
"bash",
"c",
"javascript",
"json",
"lua",
"python",
"typescript",
"tsx",
"css",
"rust",
"java",
"yaml",
}
lvim.builtin.treesitter.ignore_install = { "haskell" }
lvim.builtin.treesitter.highlight.enabled = true
-- generic LSP settings
-- -@usage disable automatic installation of servers
lvim.lsp.automatic_servers_installation = true
-- ---configure a server manually. !!Requires `:LvimCacheReset` to take effect!!
-- ---see the full default list `:lua print(vim.inspect(lvim.lsp.automatic_configuration.skipped_servers))`
-- vim.list_extend(lvim.lsp.automatic_configuration.skipped_servers, { "pyright" })
-- local opts = {} -- check the lspconfig documentation for a list of all possible options
-- require("lvim.lsp.manager").setup("pyright", opts)
-- ---remove a server from the skipped list, e.g. eslint, or emmet_ls. !!Requires `:LvimCacheReset` to take effect!!
-- ---`:LvimInfo` lists which server(s) are skiipped for the current filetype
-- vim.tbl_map(function(server)
-- return server ~= "emmet_ls"
-- end, lvim.lsp.automatic_configuration.skipped_servers)
-- -- you can set a custom on_attach function that will be used for all the language servers
-- -- See <https://github.com/neovim/nvim-lspconfig#keybindings-and-completion>
-- lvim.lsp.on_attach_callback = function(client, bufnr)
-- local function buf_set_option(...)
-- vim.api.nvim_buf_set_option(bufnr, ...)
-- end
-- --Enable completion triggered by <c-x><c-o>
-- buf_set_option("omnifunc", "v:lua.vim.lsp.omnifunc")
-- end
-- -- set a formatter, this will override the language server formatting capabilities (if it exists)
local formatters = require "lvim.lsp.null-ls.formatters"
formatters.setup {
{ command = "yapf", filetypes = { "python" } },
{ command = "isort", filetypes = { "python" } },
-- {
-- -- each formatter accepts a list of options identical to https://github.com/jose-elias-alvarez/null-ls.nvim/blob/main/doc/BUILTINS.md#Configuration
-- command = "prettier",
-- ---@usage arguments to pass to the formatter
-- -- these cannot contain whitespaces, options such as `--line-width 80` become either `{'--line-width', '80'}` or `{'--line-width=80'}`
-- extra_args = { "--print-with", "100" },
-- ---@usage specify which filetypes to enable. By default a providers will attach to all the filetypes it supports.
-- filetypes = { "typescript", "typescriptreact" },
-- },
}
-- -- set additional linters
local linters = require "lvim.lsp.null-ls.linters"
linters.setup {
{ command = "pylint", filetypes = { "python" } },
{
-- -- each linter accepts a list of options identical to https://github.com/jose-elias-alvarez/null-ls.nvim/blob/main/doc/BUILTINS.md#Configuration
command = "shellcheck",
-- ---@usage arguments to pass to the formatter
-- -- these cannot contain whitespaces, options such as `--line-width 80` become either `{'--line-width', '80'}` or `{'--line-width=80'}`
extra_args = { "--severity", "warning" },
},
{
command = "codespell",
-- ---@usage specify which filetypes to enable. By default a providers will attach to all the filetypes it supports.
-- filetypes = { "javascript", "python" },
},
}
-- Additional Plugins
lvim.plugins = {
{ "editorconfig/editorconfig-vim" },
{ "fatih/vim-go" },
{ "stsewd/isort.nvim" },
{ "github/copilot.vim" },
{
"ray-x/lsp_signature.nvim",
event = "BufRead",
config = function()
require("lsp_signature").setup()
end,
},
{
"folke/trouble.nvim",
cmd = "TroubleToggle",
},
}
vim.cmd [[ let g:python_host_prog3 = "~/.virtualenvs/python3/bin/python3" ]]
-- Autocommands (https://neovim.io/doc/user/autocmd.html)
lvim.autocommands.custom_groups = {
{ "BufWinEnter", "*.lua", "setlocal ts=8 sw=8" },
{ "BufWinEnter", "*.py", "setlocal ts=4 sw=4" },
{ "BufWinEnter", "*.sh", "setlocal ts=2 sw=2" },
{ "BufWinEnter", "*.go", "setlocal ts=1 sw=4" },
{ "BufWinEnter", "*.rb", "setlocal ts=2 sw=2" },
}

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

@ -0,0 +1,446 @@
# picom.conf
#################################
# Shadows #
#################################
# 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 = true;
# 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 ?= 'Notify-osd'",
"name = 'Plank'",
"name = 'Docky'",
"name = 'Kupfer'",
"name = 'xfce4-notifyd'",
"name *= 'VLC'",
"name *= 'compton'",
"name *= 'Chromium'",
"name *= 'Chrome'",
"class_g = 'Firefox' && argb",
"class_g = 'Conky'",
"class_g = 'Kupfer'",
"class_g = 'Synapse'",
"class_g ?= 'Notify-osd'",
"class_g ?= 'Cairo-dock'",
"class_g = 'Cairo-clock'",
"class_g ?= 'Xfce4-notifyd'",
"class_g ?= 'Xfce4-power-manager'",
"_GTK_FRAME_EXTENTS@:c",
];
# Add this one too for ...
# "_NET_WM_STATE@:32a *= '_NET_WM_STATE_HIDDEN'"
# Add this one above to the list to have no shadow in Openbox menu
# "! name~=''",
# 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
#################################
# Fading #
#################################
# Fade windows in/out when opening/closing and when opacity changes,
# unless no-fading-openclose is used.
# fading = false
fading = false
# 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.
# fade-exclude = []
# Do not fade on window open/close.
# no-fading-openclose = false
# Do not fade destroyed ARGB windows with WM frame. Workaround of bugs in Openbox, Fluxbox, etc.
# no-fading-destroyed-argb = false
#################################
# Transparency / Opacity #
#################################
# Opacity of inactive windows. (0.1 - 1.0, defaults to 1.0)
# inactive-opacity = 1
inactive-opacity = 1;
# Opacity of window titlebars and borders. (0.1 - 1.0, disabled by default)
# frame-opacity = 1.0
frame-opacity = 1;
# Default opacity for dropdown menus and popup menus. (0.0 - 1.0, defaults to 1.0)
# 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'" ];
# 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 = [ "80:class_g = 'Alacritty'" ]
#################################
# Background-Blurring #
#################################
# 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 = false
# 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";
# Exclude conditions for background blur.
# blur-background-exclude = []
blur-background-exclude = [
"window_type = 'dock'",
"window_type = 'desktop'",
"_GTK_FRAME_EXTENTS@:c"
];
#################################
# General Settings #
#################################
# 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.
#
# backend = "glx"
# backend = "xr_glx_hybrid"
backend = "xrender";
# Enable/disable VSync.
vsync = false
#vsync = true
# 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.
#
# 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
# 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 = "warn";
# 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 = '~/.config/compton.log'
# 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:
{
tooltip = { fade = true; shadow = true; opacity = 0.9; focus = true; full-shadow = false; };
dock = { shadow = false; }
dnd = { shadow = false; }
popup_menu = { opacity = 0.9; }
dropdown_menu = { opacity = 0.9; }
};

View File

@ -0,0 +1,71 @@
## Shadow
shadow = true;
# no-dnd-shadow = true;
# no-dock-shadow = false;
clear-shadow = true;
shadow-radius = 12;
shadow-offset-x = -17;
shadow-offset-y = -7;
shadow-opacity = 0.5;
shadow-exclude = [ "class_g = 'Polybar'"];
# ---
# Fade
# ---
fading = false
fade-in-step = 0.07;
fade-out-step = 0.07;
# ---
# Opacity
# ---
inactive-opacity-override = false;
## opacity
active-opacity = 1.0;
frame-opacity = 0.7;
opacity-rule = [ "80:class_g = 'Spotify'",
"97:class_g = 'teams-for-linux'",
"94:class_g = 'Thunar'",
"95:class_g = 'Brave-browser'",
"90:class_g = 'VSCodium'",
"80:class_g = 'zoom'",
"95:class_g = 'firefox'",
"80:class_g = 'dolphin'",
"90:class_g = 'Rofi'",
"90:class_g = 'whatsapp-nativefier-d40211'",
];
# ---
# Blur
# ---
blur-background = true
blur: {
method: "dual_kawase";
strength: 10;
background:false;
}
blur-background-exclude = [
];
# ---
# Settings
# ---
backend = "glx";
vsync = true
wintypes:
{
tooltip = { fade = true; shadow = true; opacity = 0.75; focus = true; full-shadow = false; };
dock = { shadow = false; }
dnd = { shadow = false; }
popup_menu = { opacity = 0.8; }
dropdown_menu = { opacity = 0.8; }
};

2837
.config/polybar/config Normal file

File diff suppressed because it is too large Load Diff

235
.config/polybar/launch.sh Executable file
View File

@ -0,0 +1,235 @@
#!/usr/bin/env sh
# More info : https://github.com/jaagr/polybar/wiki
# Install the following applications for polybar and icons in polybar if you are on ArcoLinuxD
# awesome-terminal-fonts
# Tip : There are other interesting fonts that provide icons like nerd-fonts-complete
# --log=error
# Terminate already running bar instances
killall -q polybar
# Wait until the processes have been shut down
while pgrep -u $UID -x polybar > /dev/null; do sleep 1; done
desktop=$(echo i3)
count=$(xrandr --query | grep " connected" | cut -d" " -f1 | wc -l)
case $desktop in
i3|/usr/share/xsessions/i3)
if type "xrandr" > /dev/null; then
for m in $(xrandr --query | grep " connected" | cut -d" " -f1); do
MONITOR=$m polybar --reload mainbar-i3 -c ~/.config/polybar/config &
done
else
polybar --reload mainbar-i3 -c ~/.config/polybar/config &
fi
# second polybar at bottom
# if type "xrandr" > /dev/null; then
# for m in $(xrandr --query | grep " connected" | cut -d" " -f1); do
# MONITOR=$m polybar --reload mainbar-i3-extra -c ~/.config/polybar/config &
# done
# else
# polybar --reload mainbar-i3-extra -c ~/.config/polybar/config &
# fi
;;
# openbox|/usr/share/xsessions/openbox)
# if type "xrandr" > /dev/null; then
# for m in $(xrandr --query | grep " connected" | cut -d" " -f1); do
# MONITOR=$m polybar --reload mainbar-openbox -c ~/.config/polybar/config &
# done
# else
# polybar --reload mainbar-openbox -c ~/.config/polybar/config &
# fi
# second polybar at bottom
# if type "xrandr" > /dev/null; then
# for m in $(xrandr --query | grep " connected" | cut -d" " -f1); do
# MONITOR=$m polybar --reload mainbar-openbox-extra -c ~/.config/polybar/config &
# done
# else
# polybar --reload mainbar-openbox-extra -c ~/.config/polybar/config &
# fi
# ;;
# bspwm|/usr/share/xsessions/bspwm)
# if type "xrandr" > /dev/null; then
# for m in $(xrandr --query | grep " connected" | cut -d" " -f1); do
# MONITOR=$m polybar --reload mainbar-bspwm -c ~/.config/polybar/config &
# done
# else
# polybar --reload mainbar-bspwm -c ~/.config/polybar/config &
# fi
# second polybar at bottom
# if type "xrandr" > /dev/null; then
# for m in $(xrandr --query | grep " connected" | cut -d" " -f1); do
# MONITOR=$m polybar --reload mainbar-bspwm-extra -c ~/.config/polybar/config &
# done
# else
# polybar --reload mainbar-bspwm-extra -c ~/.config/polybar/config &
# fi
# ;;
# herbstluftwm|/usr/share/xsessions/herbstluftwm)
# if type "xrandr" > /dev/null; then
# for m in $(xrandr --query | grep " connected" | cut -d" " -f1); do
# MONITOR=$m polybar --reload mainbar-herbstluftwm -c ~/.config/polybar/config &
# done
# else
# polybar --reload mainbar-herbstluftwm -c ~/.config/polybar/config &
# fi
# second polybar at bottom
# if type "xrandr" > /dev/null; then
# for m in $(xrandr --query | grep " connected" | cut -d" " -f1); do
# MONITOR=$m polybar --reload mainbar-herbstluftwm-extra -c ~/.config/polybar/config &
# done
# else
# polybar --reload mainbar-herbstluftwm-extra -c ~/.config/polybar/config &
# fi
# ;;
# worm|/usr/share/xsessions/worm)
# if type "xrandr" > /dev/null; then
# for m in $(xrandr --query | grep " connected" | cut -d" " -f1); do
# MONITOR=$m polybar --reload mainbar-worm -c ~/.config/polybar/config &
# done
# else
# polybar --reload mainbar-worm -c ~/.config/polybar/config &
# fi
# second polybar at bottom
# if type "xrandr" > /dev/null; then
# for m in $(xrandr --query | grep " connected" | cut -d" " -f1); do
# MONITOR=$m polybar --reload mainbar-worm-extra -c ~/.config/polybar/config &
# done
# else
# polybar --reload mainbar-worm-extra -c ~/.config/polybar/config &
# fi
# ;;
# berry|/usr/share/xsessions/berry)
# if type "xrandr" > /dev/null; then
# for m in $(xrandr --query | grep " connected" | cut -d" " -f1); do
# MONITOR=$m polybar --reload mainbar-berry -c ~/.config/polybar/config &
# done
# else
# polybar --reload mainbar-berry -c ~/.config/polybar/config &
# fi
# second polybar at bottom
# if type "xrandr" > /dev/null; then
# for m in $(xrandr --query | grep " connected" | cut -d" " -f1); do
# MONITOR=$m polybar --reload mainbar-berry-extra -c ~/.config/polybar/config &
# done
# else
# polybar --reload mainbar-berry-extra -c ~/.config/polybar/config &
# fi
# ;;
# xmonad|/usr/share/xsessions/xmonad)
# if [ $count = 1 ]; then
# m=$(xrandr --query | grep " connected" | cut -d" " -f1)
# MONITOR=$m polybar --reload mainbar-xmonad -c ~/.config/polybar/config &
# else
# for m in $(xrandr --query | grep " connected" | cut -d" " -f1); do
# MONITOR=$m polybar --reload mainbar-xmonad -c ~/.config/polybar/config &
# done
# fi
# second polybar at bottom
# if [ $count = 1 ]; then
# m=$(xrandr --query | grep " connected" | cut -d" " -f1)
# MONITOR=$m polybar --reload mainbar-xmonad-extra -c ~/.config/polybar/config &
# else
# for m in $(xrandr --query | grep " connected" | cut -d" " -f1); do
# MONITOR=$m polybar --reload mainbar-xmonad-extra -c ~/.config/polybar/config &
# done
# fi
# ;;
# spectrwm|/usr/share/xsessions/spectrwm)
# if type "xrandr" > /dev/null; then
# for m in $(xrandr --query | grep " connected" | cut -d" " -f1); do
# MONITOR=$m polybar --reload mainbar-spectrwm -c ~/.config/polybar/config &
# done
# else
# polybar --reload mainbar-spectrwm -c ~/.config/polybar/config &
# fi
# ;;
# cwm|/usr/share/xsessions/cwm)
# if type "xrandr" > /dev/null; then
# for m in $(xrandr --query | grep " connected" | cut -d" " -f1); do
# MONITOR=$m polybar --reload mainbar-cwm -c ~/.config/polybar/config &
# done
# else
# polybar --reload mainbar-cwm -c ~/.config/polybar/config &
# fi
# second polybar at bottom
# if type "xrandr" > /dev/null; then
# for m in $(xrandr --query | grep " connected" | cut -d" " -f1); do
# MONITOR=$m polybar --reload mainbar-cwm-extra -c ~/.config/polybar/config &
# done
# else
# polybar --reload mainbar-cwm-extra -c ~/.config/polybar/config &
# fi
# ;;
# fvwm3|/usr/share/xsessions/fvwm3)
# if type "xrandr" > /dev/null; then
# for m in $(xrandr --query | grep " connected" | cut -d" " -f1); do
# MONITOR=$m polybar --reload mainbar-fvwm3 -c ~/.config/polybar/config &
# done
# else
# polybar --reload mainbar-fvwm3 -c ~/.config/polybar/config &
# fi
# second polybar at bottom
# if type "xrandr" > /dev/null; then
# for m in $(xrandr --query | grep " connected" | cut -d" " -f1); do
# MONITOR=$m polybar --reload mainbar-fvwm3-extra -c ~/.config/polybar/config &
# done
# else
# polybar --reload mainbar-fvwm3-extra -c ~/.config/polybar/config &
# fi
# ;;
# wmderland|/usr/share/xsessions/wmderland)
# if type "xrandr" > /dev/null; then
# for m in $(xrandr --query | grep " connected" | cut -d" " -f1); do
# MONITOR=$m polybar --reload mainbar-wmderland -c ~/.config/polybar/config &
# done
# else
# polybar --reload mainbar-wmderland -c ~/.config/polybar/config &
# fi
# second polybar at bottom
# if type "xrandr" > /dev/null; then
# for m in $(xrandr --query | grep " connected" | cut -d" " -f1); do
# MONITOR=$m polybar --reload mainbar-wmderland-extra -c ~/.config/polybar/config &
# done
# else
# polybar --reload mainbar-wmderland-extra -c ~/.config/polybar/config &
# fi
# ;;
# leftwm|/usr/share/xsessions/leftwm)
# if type "xrandr" > /dev/null; then
# for m in $(xrandr --query | grep " connected" | cut -d" " -f1); do
# MONITOR=$m polybar --reload mainbar-leftwm -c ~/.config/polybar/config &
# done
# else
# polybar --reload mainbar-leftwm -c ~/.config/polybar/config &
# fi
# second polybar at bottom
# if type "xrandr" > /dev/null; then
# for m in $(xrandr --query | grep " connected" | cut -d" " -f1); do
# MONITOR=$m polybar --reload mainbar-leftwm-extra -c ~/.config/polybar/config &
# done
# else
# polybar --reload mainbar-leftwm-extra -c ~/.config/polybar/config &
# fi
# ;;
esac

View File

@ -0,0 +1,13 @@
#!/bin/sh
#source https://github.com/x70b1/polybar-scripts
#source https://github.com/polybar/polybar-scripts
if ! updates_arch=$(checkupdates 2> /dev/null | wc -l ); then
updates_arch=0
fi
if [ $updates_arch -gt 0 ]; then
echo $updates_arch
else
echo "0"
fi

View File

@ -0,0 +1,13 @@
#!/bin/sh
#source https://github.com/x70b1/polybar-scripts
#source https://github.com/polybar/polybar-scripts
if ! updates_aur=$(yay -Qum 2> /dev/null | wc -l ); then
updates_aur=0
fi
if [ $updates_aur -gt 0 ]; then
echo $updates_aur
else
echo "0"
fi

View File

@ -0,0 +1,45 @@
#!/bin/bash
# The name of polybar bar which houses the main spotify module and the control modules.
PARENT_BAR="mainbar-i3"
# Set the source audio player here.
# Players supporting the MPRIS spec are supported.
# Examples: spotify, vlc, chrome, mpv and others.
# Use `playerctld` to always detect the latest player.
# See more here: https://github.com/altdesktop/playerctl/#selecting-players-to-control
PLAYER="spotify"
# Format of the information displayed
# Eg. {{ artist }} - {{ album }} - {{ title }}
# See more attributes here: https://github.com/altdesktop/playerctl/#printing-properties-and-metadata
FORMAT="{{ title }} - {{ artist }}"
PLAYERCTL_STATUS=$(playerctl --player=$PLAYER status 2>/dev/null)
EXIT_CODE=$?
if [ $EXIT_CODE -eq 0 ]; then
STATUS=$PLAYERCTL_STATUS
else
STATUS="No player is running"
fi
if [ "$1" == "--status" ]; then
echo "$STATUS"
else
if [ "$STATUS" = "Stopped" ]; then
echo "No music is playing"
# A note on hooks:
# In the polybar config, they are supposed to be zero-indexed.
# When making IPC calls, 1-based index numbers are to be used.
# So don't get confused with hook value as 2.
elif [ "$STATUS" = "Paused" ]; then
polybar-msg -p "$(pgrep -f "polybar $PARENT_BAR")" hook spotify-play-pause 2 1>/dev/null 2>&1
playerctl --player=$PLAYER metadata --format "$FORMAT"
elif [ "$STATUS" = "No player is running" ]; then
echo $STATUS
else
polybar-msg -p "$(pgrep -f "polybar $PARENT_BAR")" hook spotify-play-pause 1 1>/dev/null 2>&1
playerctl --player=$PLAYER metadata --format "$FORMAT"
fi
fi

View File

@ -0,0 +1,194 @@
#!/usr/bin/env bash
# finds the active sink for pulse audio and increments the volume. useful when you have multiple audio outputs and have a key bound to vol-up and down
osd='no'
inc='2'
capvol='no'
maxvol='200'
autosync='yes'
# Muted status
# yes: muted
# no : not muted
curStatus="no"
active_sink=""
limit=$((100 - inc))
maxlimit=$((maxvol - inc))
reloadSink() {
active_sink=$(pacmd list-sinks | awk '/* index:/{print $3}')
}
function volUp {
getCurVol
if [ "$capvol" = 'yes' ]
then
if [ "$curVol" -le 100 ] && [ "$curVol" -ge "$limit" ]
then
pactl set-sink-volume "$active_sink" -- 100%
elif [ "$curVol" -lt "$limit" ]
then
pactl set-sink-volume "$active_sink" -- "+$inc%"
fi
elif [ "$curVol" -le "$maxvol" ] && [ "$curVol" -ge "$maxlimit" ]
then
pactl set-sink-volume "$active_sink" "$maxvol%"
elif [ "$curVol" -lt "$maxlimit" ]
then
pactl set-sink-volume "$active_sink" "+$inc%"
fi
getCurVol
if [ ${osd} = 'yes' ]
then
qdbus org.kde.kded /modules/kosd showVolume "$curVol" 0
fi
if [ ${autosync} = 'yes' ]
then
volSync
fi
}
function volDown {
pactl set-sink-volume "$active_sink" "-$inc%"
getCurVol
if [ ${osd} = 'yes' ]
then
qdbus org.kde.kded /modules/kosd showVolume "$curVol" 0
fi
if [ ${autosync} = 'yes' ]
then
volSync
fi
}
function getSinkInputs {
input_array=$(pacmd list-sink-inputs | grep -B 4 "sink: $1 " | awk '/index:/{print $2}')
}
function volSync {
getSinkInputs "$active_sink"
getCurVol
for each in $input_array
do
pactl set-sink-input-volume "$each" "$curVol%"
done
}
function getCurVol {
curVol=$(pacmd list-sinks | grep -A 15 "index: $active_sink$" | grep 'volume:' | grep -E -v 'base volume:' | awk -F : '{print $3}' | grep -o -P '.{0,3}%'| sed s/.$// | tr -d ' ')
}
function volMute {
case "$1" in
mute)
pactl set-sink-mute "$active_sink" 1
curVol=0
status=1
;;
unmute)
pactl set-sink-mute "$active_sink" 0
getCurVol
status=0
;;
esac
if [ ${osd} = 'yes' ]
then
qdbus org.kde.kded /modules/kosd showVolume ${curVol} ${status}
fi
}
function volMuteStatus {
curStatus=$(pacmd list-sinks | grep -A 15 "index: $active_sink$" | awk '/muted/{ print $2}')
}
# Prints output for bar
# Listens for events for fast update speed
function listen {
firstrun=0
pactl subscribe 2>/dev/null | {
while true; do
{
# If this is the first time just continue
# and print the current state
# Otherwise wait for events
# This is to prevent the module being empty until
# an event occurs
if [ $firstrun -eq 0 ]
then
firstrun=1
else
read -r event || break
if ! echo "$event" | grep -e "on card" -e "on sink"
then
# Avoid double events
continue
fi
fi
} &>/dev/null
output
done
}
}
function output() {
reloadSink
getCurVol
volMuteStatus
if [ "${curStatus}" = 'yes' ]
then
echo "$curVol%"
else
echo "$curVol%"
fi
} #}}}
reloadSink
case "$1" in
--up)
volUp
;;
--down)
volDown
;;
--togmute)
volMuteStatus
if [ "$curStatus" = 'yes' ]
then
volMute unmute
else
volMute mute
fi
;;
--mute)
volMute mute
;;
--unmute)
volMute unmute
;;
--sync)
volSync
;;
--listen)
# Listen for changes and immediately create new output for the bar
# This is faster than having the script on an interval
listen
;;
*)
# By default print output for bar
output
;;
esac

View File

@ -0,0 +1,12 @@
#!/bin/sh
# credits
# https://linuxconfig.org/polybar-a-better-wm-panel-for-your-linux-system
IP=$(dig +short myip.opendns.com @resolver1.opendns.com)
if pgrep -x openvpn > /dev/null; then
echo VPN: $IP
else
echo $IP
fi

View File

@ -0,0 +1,12 @@
#!/bin/bash
# see man zscroll for documentation of the following parameters
zscroll -l 80 \
--delay 0.1 \
--scroll-padding "  " \
--match-command "$HOME/.config/polybar/scripts/get_spotify_status.sh --status" \
--match-text "Playing" "--scroll 1" \
--match-text "Paused" "--scroll 0" \
--update-check true "$HOME/.config/polybar/scripts/get_spotify_status.sh" &
wait

View File

@ -0,0 +1,25 @@
#!/bin/sh
# credits
# https://github.com/NicholasFeldman/dotfiles/blob/master/polybar/.config/polybar/spotify.sh
main() {
if ! pgrep -x spotify >/dev/null; then
echo ""; exit
fi
cmd="org.freedesktop.DBus.Properties.Get"
domain="org.mpris.MediaPlayer2"
path="/org/mpris/MediaPlayer2"
meta=$(dbus-send --print-reply --dest=${domain}.spotify \
/org/mpris/MediaPlayer2 org.freedesktop.DBus.Properties.Get string:${domain}.Player string:Metadata)
artist=$(echo "$meta" | sed -nr '/xesam:artist"/,+2s/^ +string "(.*)"$/\1/p' | tail -1 | sed "s/\&/+/g")
album=$(echo "$meta" | sed -nr '/xesam:album"/,+2s/^ +variant +string "(.*)"$/\1/p' | tail -1)
title=$(echo "$meta" | sed -nr '/xesam:title"/,+2s/^ +variant +string "(.*)"$/\1/p' | tail -1 | sed "s/\&/+/g")
echo "${*:-%artist% - %title%}" | sed "s/%artist%/$artist/g;s/%title%/$title/g;s/%album%/$album/g"i | sed 's/&/\\&/g'
}
main "$@"

View File

@ -0,0 +1,43 @@
#!/bin/bash
# fork from Per-core temperatures :
# https://github.com/jaagr/polybar/wiki/User-contributed-modules#per-core-temperatures
# Get information from cores temp thanks to sensors
rawData=$( sensors | grep -m 1 Core | awk '{print substr($3, 2, length($3)-5)}' )
tempCore=($rawData)
# Define constants :
degree="°C"
temperaturesValues=(40 50 60 70 80 90)
temperaturesColors=("#6bff49" "#f4cb24" "#ff8819" "#ff3205" "#f40202" "#ef02db")
temperaturesIcons=(     )
for iCore in ${!tempCore[*]}
do
for iTemp in ${!temperaturesValues[*]}
do
if (( "${tempCore[$iCore]}" < "${temperaturesValues[$iTemp]}" )); then
tmpEcho="%{F${temperaturesColors[$iTemp]}}${tempCore[$iCore]}$degree%{F-}"
finalEcho="$finalEcho $tmpEcho"
break
fi
done
total=$(( ${tempCore[$iCore]} + total ));
done
sum=$(( $total/${#tempCore[*]} ))
for iTemp in ${!temperaturesValues[*]}
do
if (( "$sum" < "${temperaturesValues[$iTemp]}" )); then
## This line will color the icon too
tmpEcho="%{F${temperaturesColors[$iTemp]}}${temperaturesIcons[$iTemp]}%{F-}"
## This line will NOT color the icon
#tmpEcho="${temperaturesIcons[$iTemp]}"
finalEcho=" $finalEcho $tmpEcho"
break
fi
done
echo $finalEcho

View File

@ -0,0 +1,37 @@
#!/bin/python
# -*- coding: utf-8 -*-
# Procedure
# Surf to https://openweathermap.org/city
# Fill in your CITY
# e.g. Antwerp Belgium
# Check url
# https://openweathermap.org/city/2803138
# you will the city code at the end
# create an account on this website
# create an api key (free)
# LANG included thanks to krive001 on discord
import requests
CITY = "2803138"
API_KEY = "756edce7e9d4c385ef9499a53492678c"
UNITS = "Metric"
UNIT_KEY = "C"
#UNIT_KEY = "F"
LANG = "en"
#LANG = "nl"
#LANG = "hu"
REQ = requests.get("http://api.openweathermap.org/data/2.5/weather?id={}&lang={}&appid={}&units={}".format(CITY, LANG, API_KEY, UNITS))
try:
# HTTP CODE = OK
if REQ.status_code == 200:
CURRENT = REQ.json()["weather"][0]["description"].capitalize()
TEMP = int(float(REQ.json()["main"]["temp"]))
print("{}, {} °{}".format(CURRENT, TEMP, UNIT_KEY))
else:
print("Error: BAD HTTP STATUS CODE " + str(REQ.status_code))
except (ValueError, IOError):
print("Error: Unable print the data")

764
.config/ranger/rc.conf Executable file
View File

@ -0,0 +1,764 @@
# ===================================================================
# This file contains the default startup commands for ranger.
# To change them, it is recommended to create either /etc/ranger/rc.conf
# (system-wide) or ~/.config/ranger/rc.conf (per user) and add your custom
# commands there.
#
# If you copy this whole file there, you may want to set the environment
# variable RANGER_LOAD_DEFAULT_RC to FALSE to avoid loading it twice.
#
# The purpose of this file is mainly to define keybindings and settings.
# For running more complex python code, please create a plugin in "plugins/" or
# a command in "commands.py".
#
# Each line is a command that will be run before the user interface
# is initialized. As a result, you can not use commands which rely
# on the UI such as :delete or :mark.
# ===================================================================
# ===================================================================
# == Options
# ===================================================================
# Which viewmode should be used? Possible values are:
# miller: Use miller columns which show multiple levels of the hierarchy
# multipane: Midnight-commander like multipane view showing all tabs next
# to each other
set viewmode miller
#set viewmode multipane
# How many columns are there, and what are their relative widths?
set column_ratios 1,3,4
# Which files should be hidden? (regular expression)
set hidden_filter ^\.|\.(?:pyc|pyo|bak|swp)$|^lost\+found$|^__(py)?cache__$
# Show hidden files? You can toggle this by typing 'zh'
set show_hidden true
# Ask for a confirmation when running the "delete" command?
# Valid values are "always", "never", "multiple" (default)
# With "multiple", ranger will ask only if you delete multiple files at once.
set confirm_on_delete multiple
# Use non-default path for file preview script?
# ranger ships with scope.sh, a script that calls external programs (see
# README.md for dependencies) to preview images, archives, etc.
#set preview_script ~/.config/ranger/scope.sh
# Use the external preview script or display simple plain text or image previews?
set use_preview_script true
# Automatically count files in the directory, even before entering them?
set automatically_count_files true
# Open all images in this directory when running certain image viewers
# like feh or sxiv? You can still open selected files by marking them.
set open_all_images true
# Be aware of version control systems and display information.
set vcs_aware false
# State of the four backends git, hg, bzr, svn. The possible states are
# disabled, local (only show local info), enabled (show local and remote
# information).
set vcs_backend_git enabled
set vcs_backend_hg disabled
set vcs_backend_bzr disabled
set vcs_backend_svn disabled
# Truncate the longjcommit messages to this length when shown in the statusbar.
set vcs_msg_length 50
# Use one of the supported image preview protocols
set preview_images true
# Set the preview image method. Supported methods:
#
# * w3m (default):
# Preview images in full color with the external command "w3mimgpreview"?
# This requires the console web browser "w3m" and a supported terminal.
# It has been successfully tested with "xterm" and "urxvt" without tmux.
#
# * iterm2:
# Preview images in full color using iTerm2 image previews
# (http://iterm2.com/images.html). This requires using iTerm2 compiled
# with image preview support.
#
# This feature relies on the dimensions of the terminal's font. By default, a
# width of 8 and height of 11 are used. To use other values, set the options
# iterm2_font_width and iterm2_font_height to the desired values.
#
# * terminology:
# Previews images in full color in the terminology terminal emulator.
# Supports a wide variety of formats, even vector graphics like svg.
#
# * urxvt:
# Preview images in full color using urxvt image backgrounds. This
# requires using urxvt compiled with pixbuf support.
#
# * urxvt-full:
# The same as urxvt but utilizing not only the preview pane but the
# whole terminal window.
j
# * kitty:
# Preview images in full color using kitty image protocol.
# Requires python PIL or pillow library.
# If ranger does not share the local filesystem with kitty
# the transfer method is changed to encode the whole image;
# while slower, this allows remote previews,
# for example during an ssh session.
# Tmux is unsupported.
#
# * ueberzug:
# Preview images in full color with the external command "ueberzug".
# Images are shown by using a child window.
# Only for users who run X11 in GNU/Linux.
set preview_images_method ueberzug
# Delay in seconds before displaying an image with the w3m method.
# Increase it in case of experiencing display corruption.
set w3m_delay 0.02
# Manually adjust the w3mimg offset when using a terminal which needs this
set w3m_offset 0
# Default iTerm2 font size (see: preview_images_method: iterm2)
set iterm2_font_width 8
set iterm2_font_height 11
# Use a unicode "..." character to mark cut-off filenames?
set unicode_ellipsis false
# BIDI support - try to properly display file names in RTL languages (Hebrew, Arabic).
# Requires the python-bidi pip package
set bidi_support false
# Show dotfiles in the bookmark preview box?
set show_hidden_bookmarks true
# Which colorscheme to use? These colorschemes are available by default:
# default, jungle, snow, solarized
set colorscheme default
# Preview files on the rightmost column?
# And collapse (shrink) the last column if there is nothing to preview?
set preview_files true
set preview_directories true
set collapse_preview true
# Wrap long lines in plain text previews?
set wrap_plaintext_previews false
# Save the console history on exit?
set save_console_history true
# Draw the status bar on top of the browser window (default: bottom)
set status_bar_on_top false
# Draw a progress bar in the status bar which displays the average state of all
# currently running tasks which support progress bars?
set draw_progress_bar_in_status_bar true
# Draw borders around columns? (separators, outline, both, or none)
# Separators are vertical lines between columns.
# Outline draws a box around all the columns.
# Both combines the two.
set draw_borders both
# Display the directory name in tabs?
set dirname_in_tabs false
# Enable the mouse support?
set mouse_enabled true
# Display the file size in the main column or status bar?
set display_size_in_main_column true
set display_size_in_status_bar true
# Display the free disk space in the status bar?
set display_free_space_in_status_bar true
# Display files tags in all columns or only in main column?
set display_tags_in_all_columns true
# Set a title for the window? Updates both `WM_NAME` and `WM_ICON_NAME`
set update_title false
# Set the tmux/screen window-name to "ranger"?
set update_tmux_title true
# Shorten the title if it gets long? The number defines how many
# directories are displayed at once, 0 turns off this feature.
set shorten_title 3
# Show hostname in titlebar?
set hostname_in_titlebar true
# Abbreviate $HOME with ~ in the titlebar (first line) of ranger?
set tilde_in_titlebar false
# How many directory-changes or console-commands should be kept in history?
set max_history_size 20
set max_console_history_size 50
# Try to keep so much space between the top/bottom border when scrolling:
set scroll_offset 8
# Flush the input after each key hit? (Noticeable when ranger lags)
set flushinput true
# Padding on the right when there's no preview?
# This allows you to click into the space to run the file.
set padding_right true
# Save bookmarks (used with mX and `X) instantly?
# This helps to synchronize bookmarks between multiple ranger
# instances but leads to *slight* performance loss.
# When false, bookmarks are saved when ranger is exited.
set autosave_bookmarks true
# Save the "`" bookmark to disk. This can be used to switch to the last
# directory by typing "``".
set save_backtick_bookmark true
# You can display the "real" cumulative size of directories by using the
# command :get_cumulative_size or typing "dc". The size is expensive to
# calculate and will not be updated automatically. You can choose
# to update it automatically though by turning on this option:
set autoupdate_cumulative_size false
# Turning this on makes sense for screen readers:
set show_cursor false
# One of: size, natural, basename, atime, ctime, mtime, type, random
set sort natural
# Additional sorting options
set sort_reverse false
set sort_case_insensitive true
set sort_directories_first true
set sort_unicode false
# Enable this if key combinations with the Alt Key don't work for you.
# (Especially on xterm)
set xterm_alt_key false
# Whether to include bookmarks in cd command
set cd_bookmarks true
# Changes case sensitivity for the cd command tab completion
set cd_tab_case sensitive
# Use fuzzy tab completion with the "cd" command. For example,
# ":cd /u/lo/b<tab>" expands to ":cd /usr/local/bin".
set cd_tab_fuzzy false
# Avoid previewing files larger than this size, in bytes. Use a value of 0 to
# disable this feature.
set preview_max_size 0
# The key hint lists up to this size have their sublists expanded.
# Otherwise the submaps are replaced with "...".
set hint_collapse_threshold 10
# Add the highlighted file to the path in the titlebar
set show_selection_in_titlebar true
# The delay that ranger idly waits for user input, in milliseconds, with a
# resolution of 100ms. Lower delay reduces lag between directory updates but
# increases CPU load.
set idle_delay 2000
# When the metadata manager module looks for metadata, should it only look for
# a ".metadata.json" file in the current directory, or do a deep search and
# check all directories above the current one as well?
set metadata_deep_search false
# Clear all existing filters when leaving a directory
set clear_filters_on_dir_change false
# Disable displaying line numbers in main column.
# Possible values: false, absolute, relative.
set line_numbers false
# When line_numbers=relative show the absolute line number in the
# current line.
set relative_current_zero false
# Start line numbers from 1 instead of 0
set one_indexed false
# Save tabs on exit
set save_tabs_on_exit false
# Enable scroll wrapping - moving down while on the last item will wrap around to
# the top and vice versa.
set wrap_scroll false
# Set the global_inode_type_filter to nothing. Possible options: d, f and l for
# directories, files and symlinks respectively.
set global_inode_type_filter
# This setting allows to freeze the list of files to save I/O bandwidth. It
# should be 'false' during start-up, but you can toggle it by pressing F.
set freeze_files false
# Print file sizes in bytes instead of the default human-readable format.
set size_in_bytes false
# Warn at startup if RANGER_LEVEL env var is greater than 0, in other words
# give a warning when you nest ranger in a subshell started by ranger.
# Special value "error" makes the warning more visible.
set nested_ranger_warning true
# ===================================================================
# == Local Options
# ===================================================================
# You can set local options that only affect a single directory.
# Examples:
# setlocal path=~/downloads sort mtime
# ===================================================================
# == Command Aliases in the Console
# ===================================================================
alias e edit
alias q quit
alias q! quit!
alias qa quitall
alias qa! quitall!
alias qall quitall
alias qall! quitall!
alias setl setlocal
alias filter scout -prts
alias find scout -aets
alias mark scout -mr
alias unmark scout -Mr
alias search scout -rs
alias search_inc scout -rts
alias travel scout -aefklst
# ===================================================================
# == Define keys for the browser
# ===================================================================
# Basic
map Q quitall
map q quit
copymap q ZZ ZQ
map R reload_cwd
map F set freeze_files!
map <C-r> reset
map <C-l> redraw_window
map <C-c> abort
map <esc> change_mode normal
map ~ set viewmode!
map i display_file
map <A-j> scroll_preview 1
map <A-k> scroll_preview -1
map ? help
map W display_log
map w taskview_open
map S shell $SHELL
map : console
map ; console
map ! console shell%space
map @ console -p6 shell %%s
map # console shell -p%space
map s console shell%space
map r chain draw_possible_programs; console open_with%space
map f console find%space
map cd console cd%space
map <C-p> chain console; eval fm.ui.console.history_move(-1)
# Change the line mode
map Mf linemode filename
map Mi linemode fileinfo
map Mm linemode mtime
map Mh linemode humanreadablemtime
map Mp linemode permissions
map Ms linemode sizemtime
map MH linemode sizehumanreadablemtime
map Mt linemode metatitle
# Tagging / Marking
map t tag_toggle
map ut tag_remove
map "<any> tag_toggle tag=%any
map <Space> mark_files toggle=True
map v mark_files all=True toggle=True
map uv mark_files all=True val=False
map V toggle_visual_mode
map uV toggle_visual_mode reverse=True
# For the nostalgics: Midnight Commander bindings
map <F1> help
map <F2> rename_append
map <F3> display_file
map <F4> edit
map <F5> copy
map <F6> cut
map <F7> console mkdir%space
map <F8> console delete
#map <F8> console trash
map <F10> exit
# In case you work on a keyboard with dvorak layout
map <UP> move up=1
map <DOWN> move down=1
map <LEFT> move left=1
map <RIGHT> move right=1
map <HOME> move to=0
map <END> move to=-1
map <PAGEDOWN> move down=1 pages=True
map <PAGEUP> move up=1 pages=True
map <CR> move right=1
#map <DELETE> console delete
map <INSERT> console touch%space
# VIM-like
copymap <UP> k
copymap <DOWN> j
copymap <LEFT> h
copymap <RIGHT> l
copymap <HOME> gg
copymap <END> G
copymap <PAGEDOWN> <C-F>
copymap <PAGEUP> <C-B>
map J move down=0.5 pages=True
map K move up=0.5 pages=True
copymap J <C-D>
copymap K <C-U>
# Jumping around
map H history_go -1
map L history_go 1
map ] move_parent 1
map [ move_parent -1
map } traverse
map { traverse_backwards
map ) jump_non
map gh cd ~
map ge cd /etc
map gu cd /usr
map gd cd /dev
map gl cd -r .
map gL cd -r %f
map go cd /opt
map gv cd /var
map gm cd /media
map gi eval fm.cd('/run/media/' + os.getenv('USER'))
map gM cd /mnt
map gs cd /srv
map gp cd /tmp
map gr cd /
map gR eval fm.cd(ranger.RANGERDIR)
map g/ cd /
map g? cd /usr/share/doc/ranger
# External Programs
map E edit
map du shell -p du --max-depth=1 -h --apparent-size
map dU shell -p du --max-depth=1 -h --apparent-size | sort -rh
map yp yank path
map yd yank dir
map yn yank name
map y. yank name_without_extension
# Filesystem Operations
map = chmod
map cw console rename%space
map a rename_append
map A eval fm.open_console('rename ' + fm.thisfile.relative_path.replace("%", "%%"))
map I eval fm.open_console('rename ' + fm.thisfile.relative_path.replace("%", "%%"), position=7)
map pp paste
map po paste overwrite=True
map pP paste append=True
map pO paste overwrite=True append=True
map pl paste_symlink relative=False
map pL paste_symlink relative=True
map phl paste_hardlink
map pht paste_hardlinked_subtree
map pd console paste dest=
map p`<any> paste dest=%any_path
map p'<any> paste dest=%any_path
map dD console delete
map dT console trash
map dd cut
map ud uncut
map da cut mode=add
map dr cut mode=remove
map dt cut mode=toggle
map yy copy
map uy uncut
map ya copy mode=add
map yr copy mode=remove
map yt copy mode=toggle
# Temporary workarounds
map dgg eval fm.cut(dirarg=dict(to=0), narg=quantifier)
map dG eval fm.cut(dirarg=dict(to=-1), narg=quantifier)
map dj eval fm.cut(dirarg=dict(down=1), narg=quantifier)
map dk eval fm.cut(dirarg=dict(up=1), narg=quantifier)
map ygg eval fm.copy(dirarg=dict(to=0), narg=quantifier)
map yG eval fm.copy(dirarg=dict(to=-1), narg=quantifier)
map yj eval fm.copy(dirarg=dict(down=1), narg=quantifier)
map yk eval fm.copy(dirarg=dict(up=1), narg=quantifier)
# Searching
map / console search%space
map n search_next
map N search_next forward=False
map ct search_next order=tag
map cs search_next order=size
map ci search_next order=mimetype
map cc search_next order=ctime
map cm search_next order=mtime
map ca search_next order=atime
# Tabs
map <C-n> tab_new
map <C-w> tab_close
map <TAB> tab_move 1
map <S-TAB> tab_move -1
map <A-Right> tab_move 1
map <A-Left> tab_move -1
map gt tab_move 1
map gT tab_move -1
map gn tab_new
map gc tab_close
map uq tab_restore
map <a-1> tab_open 1
map <a-2> tab_open 2
map <a-3> tab_open 3
map <a-4> tab_open 4
map <a-5> tab_open 5
map <a-6> tab_open 6
map <a-7> tab_open 7
map <a-8> tab_open 8
map <a-9> tab_open 9
map <a-r> tab_shift 1
map <a-l> tab_shift -1
# Sorting
map or set sort_reverse!
map oz set sort=random
map os chain set sort=size; set sort_reverse=False
map ob chain set sort=basename; set sort_reverse=False
map on chain set sort=natural; set sort_reverse=False
map om chain set sort=mtime; set sort_reverse=False
map oc chain set sort=ctime; set sort_reverse=False
map oa chain set sort=atime; set sort_reverse=False
map ot chain set sort=type; set sort_reverse=False
map oe chain set sort=extension; set sort_reverse=False
map oS chain set sort=size; set sort_reverse=True
map oB chain set sort=basename; set sort_reverse=True
map oN chain set sort=natural; set sort_reverse=True
map oM chain set sort=mtime; set sort_reverse=True
map oC chain set sort=ctime; set sort_reverse=True
map oA chain set sort=atime; set sort_reverse=True
map oT chain set sort=type; set sort_reverse=True
map oE chain set sort=extension; set sort_reverse=True
map dc get_cumulative_size
# Settings
map zc set collapse_preview!
map zd set sort_directories_first!
map zh set show_hidden!
map <C-h> set show_hidden!
copymap <C-h> <backspace>
copymap <backspace> <backspace2>
map zI set flushinput!
map zi set preview_images!
map zm set mouse_enabled!
map zp set preview_files!
map zP set preview_directories!
map zs set sort_case_insensitive!
map zu set autoupdate_cumulative_size!
map zv set use_preview_script!
map zf console filter%space
copymap zf zz
# Filter stack
map .d filter_stack add type d
map .f filter_stack add type f
map .l filter_stack add type l
map .m console filter_stack add mime%space
map .n console filter_stack add name%space
map .# console filter_stack add hash%space
map ." filter_stack add duplicate
map .' filter_stack add unique
map .| filter_stack add or
map .& filter_stack add and
map .! filter_stack add not
map .r filter_stack rotate
map .c filter_stack clear
map .* filter_stack decompose
map .p filter_stack pop
map .. filter_stack show
# Bookmarks
map `<any> enter_bookmark %any
map '<any> enter_bookmark %any
map m<any> set_bookmark %any
map um<any> unset_bookmark %any
map m<bg> draw_bookmarks
copymap m<bg> um<bg> `<bg> '<bg>
# Set the wallpaper
map bgf shell feh --bg-fill %f
map bgt shell feh --bg-tile %f
# Generate all the chmod bindings with some python help:
eval for arg in "rwxXst": cmd("map +u{0} shell -f chmod u+{0} %s".format(arg))
eval for arg in "rwxXst": cmd("map +g{0} shell -f chmod g+{0} %s".format(arg))
eval for arg in "rwxXst": cmd("map +o{0} shell -f chmod o+{0} %s".format(arg))
eval for arg in "rwxXst": cmd("map +a{0} shell -f chmod a+{0} %s".format(arg))
eval for arg in "rwxXst": cmd("map +{0} shell -f chmod u+{0} %s".format(arg))
eval for arg in "rwxXst": cmd("map -u{0} shell -f chmod u-{0} %s".format(arg))
eval for arg in "rwxXst": cmd("map -g{0} shell -f chmod g-{0} %s".format(arg))
eval for arg in "rwxXst": cmd("map -o{0} shell -f chmod o-{0} %s".format(arg))
eval for arg in "rwxXst": cmd("map -a{0} shell -f chmod a-{0} %s".format(arg))
eval for arg in "rwxXst": cmd("map -{0} shell -f chmod u-{0} %s".format(arg))
# ===================================================================
# == Define keys for the console
# ===================================================================
# Note: Unmapped keys are passed directly to the console.
# Basic
cmap <tab> eval fm.ui.console.tab()
cmap <s-tab> eval fm.ui.console.tab(-1)
cmap <ESC> eval fm.ui.console.close()
cmap <CR> eval fm.ui.console.execute()
cmap <C-l> redraw_window
copycmap <ESC> <C-c>
copycmap <CR> <C-j>
# Move around
cmap <up> eval fm.ui.console.history_move(-1)
cmap <down> eval fm.ui.console.history_move(1)
cmap <left> eval fm.ui.console.move(left=1)
cmap <right> eval fm.ui.console.move(right=1)
cmap <home> eval fm.ui.console.move(right=0, absolute=True)
cmap <end> eval fm.ui.console.move(right=-1, absolute=True)
cmap <a-b> eval fm.ui.console.move_word(left=1)
cmap <a-f> eval fm.ui.console.move_word(right=1)
copycmap <a-b> <a-left>
copycmap <a-f> <a-right>
# Line Editing
cmap <backspace> eval fm.ui.console.delete(-1)
cmap <delete> eval fm.ui.console.delete(0)
cmap <C-w> eval fm.ui.console.delete_word()
cmap <A-d> eval fm.ui.console.delete_word(backward=False)
cmap <C-k> eval fm.ui.console.delete_rest(1)
cmap <C-u> eval fm.ui.console.delete_rest(-1)
cmap <C-y> eval fm.ui.console.paste()
# And of course the emacs way
copycmap <ESC> <C-g>
copycmap <up> <C-p>
copycmap <down> <C-n>
copycmap <left> <C-b>
copycmap <right> <C-f>
copycmap <home> <C-a>
copycmap <end> <C-e>
copycmap <delete> <C-d>
copycmap <backspace> <C-h>
# Note: There are multiple ways to express backspaces. <backspace> (code 263)
# and <backspace2> (code 127). To be sure, use both.
copycmap <backspace> <backspace2>
# This special expression allows typing in numerals:
cmap <allow_quantifiers> false
# ===================================================================
# == Pager Keybindings
# ===================================================================
# Movement
pmap <down> pager_move down=1
pmap <up> pager_move up=1
pmap <left> pager_move left=4
pmap <right> pager_move right=4
pmap <home> pager_move to=0
pmap <end> pager_move to=-1
pmap <pagedown> pager_move down=1.0 pages=True
pmap <pageup> pager_move up=1.0 pages=True
pmap <C-d> pager_move down=0.5 pages=True
pmap <C-u> pager_move up=0.5 pages=True
copypmap <UP> k <C-p>
copypmap <DOWN> j <C-n> <CR>
copypmap <LEFT> h
copypmap <RIGHT> l
copypmap <HOME> g
copypmap <END> G
copypmap <C-d> d
copypmap <C-u> u
copypmap <PAGEDOWN> n f <C-F> <Space>
copypmap <PAGEUP> p b <C-B>
# Basic
pmap <C-l> redraw_window
pmap <ESC> pager_close
copypmap <ESC> q Q i <F3>
pmap E edit_file
# ===================================================================
# == Taskview Keybindings
# ===================================================================
# Movement
tmap <up> taskview_move up=1
tmap <down> taskview_move down=1
tmap <home> taskview_move to=0
tmap <end> taskview_move to=-1
tmap <pagedown> taskview_move down=1.0 pages=True
tmap <pageup> taskview_move up=1.0 pages=True
tmap <C-d> taskview_move down=0.5 pages=True
tmap <C-u> taskview_move up=0.5 pages=True
copytmap <UP> k <C-p>
copytmap <DOWN> j <C-n> <CR>
copytmap <HOME> g
copytmap <END> G
copytmap <C-u> u
copytmap <PAGEDOWN> n f <C-F> <Space>
copytmap <PAGEUP> p b <C-B>
# Changing priority and deleting tasks
tmap J eval -q fm.ui.taskview.task_move(-1)
tmap K eval -q fm.ui.taskview.task_move(0)
tmap dd eval -q fm.ui.taskview.task_remove()
tmap <pagedown> eval -q fm.ui.taskview.task_move(-1)
tmap <pageup> eval -q fm.ui.taskview.task_move(0)
tmap <delete> eval -q fm.ui.taskview.task_remove()
# Basic
tmap <C-l> redraw_window
tmap <ESC> taskview_close
copytmap <ESC> q Q w <C-c>

350
.config/ranger/scope.sh Executable file
View File

@ -0,0 +1,350 @@
#!/usr/bin/env bash
set -o noclobber -o noglob -o nounset -o pipefail
IFS=$'\n'
## If the option `use_preview_script` is set to `true`,
## then this script will be called and its output will be displayed in ranger.
## ANSI color codes are supported.
## STDIN is disabled, so interactive scripts won't work properly
## This script is considered a configuration file and must be updated manually.
## It will be left untouched if you upgrade ranger.
## Because of some automated testing we do on the script #'s for comments need
## to be doubled up. Code that is commented out, because it's an alternative for
## example, gets only one #.
## Meanings of exit codes:
## code | meaning | action of ranger
## -----+------------+-------------------------------------------
## 0 | success | Display stdout as preview
## 1 | no preview | Display no preview at all
## 2 | plain text | Display the plain content of the file
## 3 | fix width | Don't reload when width changes
## 4 | fix height | Don't reload when height changes
## 5 | fix both | Don't ever reload
## 6 | image | Display the image `$IMAGE_CACHE_PATH` points to as an image preview
## 7 | image | Display the file directly as an image
## Script arguments
FILE_PATH="${1}" # Full path of the highlighted file
PV_WIDTH="${2}" # Width of the preview pane (number of fitting characters)
## shellcheck disable=SC2034 # PV_HEIGHT is provided for convenience and unused
PV_HEIGHT="${3}" # Height of the preview pane (number of fitting characters)
IMAGE_CACHE_PATH="${4}" # Full path that should be used to cache image preview
PV_IMAGE_ENABLED="${5}" # 'True' if image previews are enabled, 'False' otherwise.
FILE_EXTENSION="${FILE_PATH##*.}"
FILE_EXTENSION_LOWER="$(printf "%s" "${FILE_EXTENSION}" | tr '[:upper:]' '[:lower:]')"
## Settings
HIGHLIGHT_SIZE_MAX=262143 # 256KiB
HIGHLIGHT_TABWIDTH=${HIGHLIGHT_TABWIDTH:-8}
HIGHLIGHT_STYLE=${HIGHLIGHT_STYLE:-pablo}
HIGHLIGHT_OPTIONS="--replace-tabs=${HIGHLIGHT_TABWIDTH} --style=${HIGHLIGHT_STYLE} ${HIGHLIGHT_OPTIONS:-}"
PYGMENTIZE_STYLE=${PYGMENTIZE_STYLE:-autumn}
OPENSCAD_IMGSIZE=${RNGR_OPENSCAD_IMGSIZE:-1000,1000}
OPENSCAD_COLORSCHEME=${RNGR_OPENSCAD_COLORSCHEME:-Tomorrow Night}
handle_extension() {
case "${FILE_EXTENSION_LOWER}" in
## Archive
a|ace|alz|arc|arj|bz|bz2|cab|cpio|deb|gz|jar|lha|lz|lzh|lzma|lzo|\
rpm|rz|t7z|tar|tbz|tbz2|tgz|tlz|txz|tZ|tzo|war|xpi|xz|Z|zip)
atool --list -- "${FILE_PATH}" && exit 5
bsdtar --list --file "${FILE_PATH}" && exit 5
exit 1;;
rar)
## Avoid password prompt by providing empty password
unrar lt -p- -- "${FILE_PATH}" && exit 5
exit 1;;
7z)
## Avoid password prompt by providing empty password
7z l -p -- "${FILE_PATH}" && exit 5
exit 1;;
## PDF
pdf)
## Preview as text conversion
pdftotext -l 10 -nopgbrk -q -- "${FILE_PATH}" - | \
fmt -w "${PV_WIDTH}" && exit 5
mutool draw -F txt -i -- "${FILE_PATH}" 1-10 | \
fmt -w "${PV_WIDTH}" && exit 5
exiftool "${FILE_PATH}" && exit 5
exit 1;;
## BitTorrent
torrent)
transmission-show -- "${FILE_PATH}" && exit 5
exit 1;;
## OpenDocument
odt|ods|odp|sxw)
## Preview as text conversion
odt2txt "${FILE_PATH}" && exit 5
## Preview as markdown conversion
pandoc -s -t markdown -- "${FILE_PATH}" && exit 5
exit 1;;
## XLSX
xlsx)
## Preview as csv conversion
## Uses: https://github.com/dilshod/xlsx2csv
xlsx2csv -- "${FILE_PATH}" && exit 5
exit 1;;
## HTML
htm|html|xhtml)
## Preview as text conversion
w3m -dump "${FILE_PATH}" && exit 5
lynx -dump -- "${FILE_PATH}" && exit 5
elinks -dump "${FILE_PATH}" && exit 5
pandoc -s -t markdown -- "${FILE_PATH}" && exit 5
;;
## JSON
json)
jq --color-output . "${FILE_PATH}" && exit 5
python -m json.tool -- "${FILE_PATH}" && exit 5
;;
## Direct Stream Digital/Transfer (DSDIFF) and wavpack aren't detected
## by file(1).
dff|dsf|wv|wvc)
mediainfo "${FILE_PATH}" && exit 5
exiftool "${FILE_PATH}" && exit 5
;; # Continue with next handler on failure
esac
}
handle_image() {
## Size of the preview if there are multiple options or it has to be
## rendered from vector graphics. If the conversion program allows
## specifying only one dimension while keeping the aspect ratio, the width
## will be used.
local DEFAULT_SIZE="1920x1080"
local mimetype="${1}"
case "${mimetype}" in
## SVG
# image/svg+xml|image/svg)
# convert -- "${FILE_PATH}" "${IMAGE_CACHE_PATH}" && exit 6
# exit 1;;
## DjVu
# image/vnd.djvu)
# ddjvu -format=tiff -quality=90 -page=1 -size="${DEFAULT_SIZE}" \
# - "${IMAGE_CACHE_PATH}" < "${FILE_PATH}" \
# && exit 6 || exit 1;;
## Image
image/*)
local orientation
orientation="$( identify -format '%[EXIF:Orientation]\n' -- "${FILE_PATH}" )"
## If orientation data is present and the image actually
## needs rotating ("1" means no rotation)...
if [[ -n "$orientation" && "$orientation" != 1 ]]; then
## ...auto-rotate the image according to the EXIF data.
convert -- "${FILE_PATH}" -auto-orient "${IMAGE_CACHE_PATH}" && exit 6
fi
## `w3mimgdisplay` will be called for all images (unless overriden
## as above), but might fail for unsupported types.
exit 7;;
## Video
# video/*)
# # Thumbnail
# ffmpegthumbnailer -i "${FILE_PATH}" -o "${IMAGE_CACHE_PATH}" -s 0 && exit 6
# exit 1;;
## PDF
# application/pdf)
# pdftoppm -f 1 -l 1 \
# -scale-to-x "${DEFAULT_SIZE%x*}" \
# -scale-to-y -1 \
# -singlefile \
# -jpeg -tiffcompression jpeg \
# -- "${FILE_PATH}" "${IMAGE_CACHE_PATH%.*}" \
# && exit 6 || exit 1;;
## ePub, MOBI, FB2 (using Calibre)
# application/epub+zip|application/x-mobipocket-ebook|\
# application/x-fictionbook+xml)
# # ePub (using https://github.com/marianosimone/epub-thumbnailer)
# epub-thumbnailer "${FILE_PATH}" "${IMAGE_CACHE_PATH}" \
# "${DEFAULT_SIZE%x*}" && exit 6
# ebook-meta --get-cover="${IMAGE_CACHE_PATH}" -- "${FILE_PATH}" \
# >/dev/null && exit 6
# exit 1;;
## Font
application/font*|application/*opentype)
preview_png="/tmp/$(basename "${IMAGE_CACHE_PATH%.*}").png"
if fontimage -o "${preview_png}" \
--pixelsize "120" \
--fontname \
--pixelsize "80" \
--text " ABCDEFGHIJKLMNOPQRSTUVWXYZ " \
--text " abcdefghijklmnopqrstuvwxyz " \
--text " 0123456789.:,;(*!?') ff fl fi ffi ffl " \
--text " The quick brown fox jumps over the lazy dog. " \
"${FILE_PATH}";
then
convert -- "${preview_png}" "${IMAGE_CACHE_PATH}" \
&& rm "${preview_png}" \
&& exit 6
else
exit 1
fi
;;
## Preview archives using the first image inside.
## (Very useful for comic book collections for example.)
# application/zip|application/x-rar|application/x-7z-compressed|\
# application/x-xz|application/x-bzip2|application/x-gzip|application/x-tar)
# local fn=""; local fe=""
# local zip=""; local rar=""; local tar=""; local bsd=""
# case "${mimetype}" in
# application/zip) zip=1 ;;
# application/x-rar) rar=1 ;;
# application/x-7z-compressed) ;;
# *) tar=1 ;;
# esac
# { [ "$tar" ] && fn=$(tar --list --file "${FILE_PATH}"); } || \
# { fn=$(bsdtar --list --file "${FILE_PATH}") && bsd=1 && tar=""; } || \
# { [ "$rar" ] && fn=$(unrar lb -p- -- "${FILE_PATH}"); } || \
# { [ "$zip" ] && fn=$(zipinfo -1 -- "${FILE_PATH}"); } || return
#
# fn=$(echo "$fn" | python -c "import sys; import mimetypes as m; \
# [ print(l, end='') for l in sys.stdin if \
# (m.guess_type(l[:-1])[0] or '').startswith('image/') ]" |\
# sort -V | head -n 1)
# [ "$fn" = "" ] && return
# [ "$bsd" ] && fn=$(printf '%b' "$fn")
#
# [ "$tar" ] && tar --extract --to-stdout \
# --file "${FILE_PATH}" -- "$fn" > "${IMAGE_CACHE_PATH}" && exit 6
# fe=$(echo -n "$fn" | sed 's/[][*?\]/\\\0/g')
# [ "$bsd" ] && bsdtar --extract --to-stdout \
# --file "${FILE_PATH}" -- "$fe" > "${IMAGE_CACHE_PATH}" && exit 6
# [ "$bsd" ] || [ "$tar" ] && rm -- "${IMAGE_CACHE_PATH}"
# [ "$rar" ] && unrar p -p- -inul -- "${FILE_PATH}" "$fn" > \
# "${IMAGE_CACHE_PATH}" && exit 6
# [ "$zip" ] && unzip -pP "" -- "${FILE_PATH}" "$fe" > \
# "${IMAGE_CACHE_PATH}" && exit 6
# [ "$rar" ] || [ "$zip" ] && rm -- "${IMAGE_CACHE_PATH}"
# ;;
esac
# openscad_image() {
# TMPPNG="$(mktemp -t XXXXXX.png)"
# openscad --colorscheme="${OPENSCAD_COLORSCHEME}" \
# --imgsize="${OPENSCAD_IMGSIZE/x/,}" \
# -o "${TMPPNG}" "${1}"
# mv "${TMPPNG}" "${IMAGE_CACHE_PATH}"
# }
# case "${FILE_EXTENSION_LOWER}" in
# ## 3D models
# ## OpenSCAD only supports png image output, and ${IMAGE_CACHE_PATH}
# ## is hardcoded as jpeg. So we make a tempfile.png and just
# ## move/rename it to jpg. This works because image libraries are
# ## smart enough to handle it.
# csg|scad)
# openscad_image "${FILE_PATH}" && exit 6
# ;;
# 3mf|amf|dxf|off|stl)
# openscad_image <(echo "import(\"${FILE_PATH}\");") && exit 6
# ;;
# esac
}
handle_mime() {
local mimetype="${1}"
case "${mimetype}" in
## RTF and DOC
text/rtf|*msword)
## Preview as text conversion
## note: catdoc does not always work for .doc files
## catdoc: http://www.wagner.pp.ru/~vitus/software/catdoc/
catdoc -- "${FILE_PATH}" && exit 5
exit 1;;
## DOCX, ePub, FB2 (using markdown)
## You might want to remove "|epub" and/or "|fb2" below if you have
## uncommented other methods to preview those formats
*wordprocessingml.document|*/epub+zip|*/x-fictionbook+xml)
## Preview as markdown conversion
pandoc -s -t markdown -- "${FILE_PATH}" && exit 5
exit 1;;
## XLS
*ms-excel)
## Preview as csv conversion
## xls2csv comes with catdoc:
## http://www.wagner.pp.ru/~vitus/software/catdoc/
xls2csv -- "${FILE_PATH}" && exit 5
exit 1;;
## Text
text/* | */xml)
## Syntax highlight
if [[ "$( stat --printf='%s' -- "${FILE_PATH}" )" -gt "${HIGHLIGHT_SIZE_MAX}" ]]; then
exit 2
fi
if [[ "$( tput colors )" -ge 256 ]]; then
local pygmentize_format='terminal256'
local highlight_format='xterm256'
else
local pygmentize_format='terminal'
local highlight_format='ansi'
fi
env HIGHLIGHT_OPTIONS="${HIGHLIGHT_OPTIONS}" highlight \
--out-format="${highlight_format}" \
--force -- "${FILE_PATH}" && exit 5
env COLORTERM=8bit bat --color=always --style="plain" \
-- "${FILE_PATH}" && exit 5
pygmentize -f "${pygmentize_format}" -O "style=${PYGMENTIZE_STYLE}"\
-- "${FILE_PATH}" && exit 5
exit 2;;
## DjVu
image/vnd.djvu)
## Preview as text conversion (requires djvulibre)
djvutxt "${FILE_PATH}" | fmt -w "${PV_WIDTH}" && exit 5
exiftool "${FILE_PATH}" && exit 5
exit 1;;
## Image
image/*)
## Preview as text conversion
# img2txt --gamma=0.6 --width="${PV_WIDTH}" -- "${FILE_PATH}" && exit 4
exiftool "${FILE_PATH}" && exit 5
exit 1;;
## Video and audio
video/* | audio/*)
mediainfo "${FILE_PATH}" && exit 5
exiftool "${FILE_PATH}" && exit 5
exit 1;;
esac
}
handle_fallback() {
echo '----- File Type Classification -----' && file --dereference --brief -- "${FILE_PATH}" && exit 5
exit 1
}
MIMETYPE="$( file --dereference --brief --mime-type -- "${FILE_PATH}" )"
if [[ "${PV_IMAGE_ENABLED}" == 'True' ]]; then
handle_image "${MIMETYPE}"
fi
handle_extension
handle_mime "${MIMETYPE}"
handle_fallback
exit 1

View File

@ -0,0 +1,100 @@
#!/usr/bin/env bash
## Author : Aditya Shakya
## Mail : adi1090x@gmail.com
## Github : @adi1090x
## Twitter : @adi1090x
dir="$HOME/.config/rofi/applets/android"
rofi_command="rofi -theme $dir/six.rasi"
# Links
terminal=""
files=""
editor=""
browser=""
music=""
settings=""
# Error msg
msg() {
rofi -theme "$dir/message.rasi" -e "$1"
}
# Variable passed to rofi
options="$terminal\n$files\n$editor\n$browser\n$music\n$settings"
chosen="$(echo -e "$options" | $rofi_command -p "Most Used" -dmenu -selected-row 0)"
case $chosen in
$terminal)
if [[ -f /usr/bin/termite ]]; then
termite &
elif [[ -f /usr/bin/urxvt ]]; then
urxvt &
elif [[ -f /usr/bin/kitty ]]; then
kitty &
elif [[ -f /usr/bin/xterm ]]; then
xterm &
elif [[ -f /usr/bin/xfce4-terminal ]]; then
xfce4-terminal &
elif [[ -f /usr/bin/gnome-terminal ]]; then
gnome-terminal &
elif [[ -f /usr/bin/alacritty ]]; then
alacritty &
else
msg "No suitable terminal found!"
fi
;;
$files)
if [[ -f /usr/bin/thunar ]]; then
thunar &
elif [[ -f /usr/bin/pcmanfm ]]; then
pcmanfm &
else
msg "No suitable file manager found!"
fi
;;
$editor)
if [[ -f /usr/bin/geany ]]; then
geany &
elif [[ -f /usr/bin/leafpad ]]; then
leafpad &
elif [[ -f /usr/bin/mousepad ]]; then
mousepad &
elif [[ -f /usr/bin/code ]]; then
code &
else
msg "No suitable text editor found!"
fi
;;
$browser)
if [[ -f /usr/bin/firefox ]]; then
firefox &
elif [[ -f /usr/bin/firefox-developer-edition ]]; then
firefox-developer-edition &
elif [[ -f /usr/bin/chromium ]]; then
chromium &
elif [[ -f /usr/bin/midori ]]; then
midori &
else
msg "No suitable web browser found!"
fi
;;
$music)
if [[ -f /usr/bin/lxmusic ]]; then
lxmusic &
elif [[ -f /usr/bin/spotify ]]; then
spotify &
else
msg "No suitable music player found!"
fi
;;
$settings)
if [[ -f /usr/bin/xfce4-settings-manager ]]; then
xfce4-settings-manager &
else
msg "No suitable settings manager found!"
fi
;;
esac

View File

@ -0,0 +1,73 @@
#!/usr/bin/env bash
## Author : Aditya Shakya
## Mail : adi1090x@gmail.com
## Github : @adi1090x
## Twitter : @adi1090x
dir="$HOME/.config/rofi/applets/android"
rofi_command="rofi -theme $dir/three.rasi"
# Error msg
msg() {
rofi -theme "$dir/message.rasi" -e "$1"
}
## Get Brightness
if [[ -f /usr/bin/blight ]]; then
DEVICE=$(ls /sys/class/backlight | head -n 1)
BNESS="$(blight -d $DEVICE get brightness)"
PERC="$(($BNESS*100/255))"
BLIGHT=${PERC%.*}
elif [[ -f /usr/bin/xbacklight ]]; then
VAR="$(xbacklight -get)"
BLIGHT="$(printf "%.0f\n" "$VAR")"
else
msg "No suitable backlight utility found!"
exit 1
fi
if [[ $BLIGHT -ge 1 ]] && [[ $BLIGHT -le 29 ]]; then
MSG="Low"
elif [[ $BLIGHT -ge 30 ]] && [[ $BLIGHT -le 49 ]]; then
MSG="Optimal"
elif [[ $BLIGHT -ge 50 ]] && [[ $BLIGHT -le 69 ]]; then
MSG="High"
elif [[ $BLIGHT -ge 70 ]] && [[ $BLIGHT -le 99 ]]; then
MSG="Too Much"
fi
## Icons
ICON_UP=""
ICON_DOWN=""
ICON_OPT=""
notify="notify-send -u low -t 1500"
options="$ICON_UP\n$ICON_OPT\n$ICON_DOWN"
## Main
chosen="$(echo -e "$options" | $rofi_command -p "$BLIGHT%" -dmenu -selected-row 1)"
case $chosen in
$ICON_UP)
if [[ -f /usr/bin/blight ]]; then
blight -d $DEVICE set +10% && $notify "Brightness Up $ICON_UP"
elif [[ -f /usr/bin/xbacklight ]]; then
xbacklight -inc 10 && $notify "Brightness Up $ICON_UP"
fi
;;
$ICON_DOWN)
if [[ -f /usr/bin/blight ]]; then
blight -d $DEVICE set -10% && $notify "Brightness Down $ICON_DOWN"
elif [[ -f /usr/bin/xbacklight ]]; then
xbacklight -dec 10 && $notify "Brightness Down $ICON_DOWN"
fi
;;
$ICON_OPT)
if [[ -f /usr/bin/blight ]]; then
blight -d $DEVICE set 25% && $notify "Optimal Brightness $ICON_OPT"
elif [[ -f /usr/bin/xbacklight ]]; then
xbacklight -set 30 && $notify "Optimal Brightness $ICON_OPT"
fi
;;
esac

View File

@ -0,0 +1,22 @@
/*
* Change the colorscheme for every menu simply by editing this file...
*
* Available Color Schemes
* // Dark
* material-dark/amber material-dark/blue material-dark/blue_grey material-dark/brown material-dark/cyan material-dark/deep_orange
* material-dark/deep_purple material-dark/green material-dark/grey material-dark/indigo material-dark/light_blue material-dark/light_green
* material-dark/lime material-dark/orange material-dark/pink material-dark/purple material-dark/red material-dark/teal
* material-dark/yellow
* // Light
* material-light/amber material-light/blue material-light/blue_grey material-light/brown material-light/cyan material-light/deep_orange
* material-light/deep_purple material-light/green material-light/grey material-light/indigo material-light/light_blue material-light/light_green
* material-light/lime material-light/orange material-light/pink material-light/purple material-light/red material-light/teal
* material-light/yellow
*
* // Other
* adapta, adapta-nokto, arc, arc-dark, adwaita, gruvbox, dark
* armchair, darkpink, fresh, inside, party, sirin
*
*/
@import "../styles/arc.rasi"

View File

@ -0,0 +1,24 @@
/* Confirm Dialog */
@import "colors.rasi"
* {
background-color: @background;
text-color: @foreground;
font: "Iosevka Nerd Font 12";
}
window {
width: 225px;
padding: 25px;
border: 0px;
border-radius: 12px;
border-color: @accent;
location: center;
y-offset: -20px;
}
entry {
expand: true;
text-color: @accent;
}

View File

@ -0,0 +1,91 @@
/*
*
* Author : Aditya Shakya
* Mail : adi1090x@gmail.com
* Github : @adi1090x
* Twitter : @adi1090x
*
*/
configuration {
disable-history: false;
fullscreen: false;
hide-scrollbar: true;
sidebar-mode: false;
}
@import "colors.rasi"
* {
background-color: @background;
text-color: @foreground;
}
window {
transparency: "real";
border-radius: 12px;
width: 100px;
location: east;
x-offset: -15px;
y-offset: 0px;
}
listview {
lines: 5;
margin: 8px;
spacing: 8px;
cycle: true;
dynamic: true;
layout: vertical;
}
mainbox {
background-color: @background;
children: [ listview ];
}
element {
background-color: @background-light;
text-color: @foreground;
orientation: vertical;
border-radius: 12px;
}
element-text {
font: "feather 20";
expand: true;
horizontal-align: 0.5;
vertical-align: 0;
margin: 10px 10px 33px 10px;
}
element normal.urgent,
element alternate.urgent {
background-color: @urgent;
text-color: @foreground;
border-radius: 10px;
}
element normal.active,
element alternate.active {
background-color: @background-alt;
text-color: @foreground;
}
element selected {
background-color: @accent;
text-color: @background;
border: 0px;
border-radius: 10px;
border-color: @border;
}
element selected.urgent {
background-color: @urgent;
text-color: @foreground;
}
element selected.active {
background-color: @background-alt;
color: @foreground;
}

View File

@ -0,0 +1,24 @@
/* Confirm Dialog */
@import "colors.rasi"
* {
background-color: @background;
text-color: @foreground;
font: "Iosevka Nerd Font 12";
}
window {
width: 360px;
padding: 25px;
border: 0px;
border-radius: 12px;
border-color: @accent;
location: center;
y-offset: -20px;
}
entry {
expand: true;
text-color: @accent;
}

View File

@ -0,0 +1,76 @@
#!/usr/bin/env bash
## Author : Aditya Shakya
## Mail : adi1090x@gmail.com
## Github : @adi1090x
## Twitter : @adi1090x
dir="$HOME/.config/rofi/applets/android"
rofi_command="rofi -theme $dir/six.rasi"
# Gets the current status of mpd (for us to parse it later on)
status="$(mpc status)"
# Defines the Play / Pause option content
if [[ $status == *"[playing]"* ]]; then
play_pause=""
else
play_pause=""
fi
active=""
urgent=""
# Display if repeat mode is on / off
tog_repeat=""
if [[ $status == *"repeat: on"* ]]; then
active="-a 4"
elif [[ $status == *"repeat: off"* ]]; then
urgent="-u 4"
else
tog_repeat=" Parsing error"
fi
# Display if random mode is on / off
tog_random=""
if [[ $status == *"random: on"* ]]; then
[ -n "$active" ] && active+=",5" || active="-a 5"
elif [[ $status == *"random: off"* ]]; then
[ -n "$urgent" ] && urgent+=",5" || urgent="-u 5"
else
tog_random=" Parsing error"
fi
stop=""
next=""
previous=""
# Variable passed to rofi
options="$previous\n$play_pause\n$stop\n$next\n$tog_repeat\n$tog_random"
# Get the current playing song
current=$(mpc -f %title% current)
# If mpd isn't running it will return an empty string, we don't want to display that
if [[ -z "$current" ]]; then
current="-"
fi
# Spawn the mpd menu with the "Play / Pause" entry selected by default
chosen="$(echo -e "$options" | $rofi_command -p "$current" -dmenu $active $urgent -selected-row 1)"
case $chosen in
$previous)
mpc -q prev && notify-send -u low -t 1800 "$(mpc current)"
;;
$play_pause)
mpc -q toggle && notify-send -u low -t 1800 "$(mpc current)"
;;
$stop)
mpc -q stop
;;
$next)
mpc -q next && notify-send -u low -t 1800 "$(mpc current)"
;;
$tog_repeat)
mpc -q repeat
;;
$tog_random)
mpc -q random
;;
esac

View File

@ -0,0 +1,94 @@
#!/usr/bin/env bash
## Author : Aditya Shakya
## Mail : adi1090x@gmail.com
## Github : @adi1090x
## Twitter : @adi1090x
dir="$HOME/.config/rofi/applets/android"
rofi_command="rofi -theme $dir/five.rasi"
uptime=$(uptime -p | sed -e 's/up //g')
# Options
shutdown=""
reboot=""
lock=""
suspend=""
logout=""
# Confirmation
confirm_exit() {
rofi -dmenu\
-i\
-no-fixed-num-lines\
-p "Are You Sure? : "\
-theme $dir/confirm.rasi
}
# Message
msg() {
rofi -theme "$dir/message.rasi" -e "Available Options - yes / y / no / n"
}
# Variable passed to rofi
options="$shutdown\n$reboot\n$lock\n$suspend\n$logout"
chosen="$(echo -e "$options" | $rofi_command -p "Uptime: $uptime" -dmenu -selected-row 2)"
case $chosen in
$shutdown)
ans=$(confirm_exit &)
if [[ $ans == "yes" || $ans == "YES" || $ans == "y" || $ans == "Y" ]]; then
systemctl poweroff
elif [[ $ans == "no" || $ans == "NO" || $ans == "n" || $ans == "N" ]]; then
exit 0
else
msg
fi
;;
$reboot)
ans=$(confirm_exit &)
if [[ $ans == "yes" || $ans == "YES" || $ans == "y" || $ans == "Y" ]]; then
systemctl reboot
elif [[ $ans == "no" || $ans == "NO" || $ans == "n" || $ans == "N" ]]; then
exit 0
else
msg
fi
;;
$lock)
if [[ -f /usr/bin/i3lock ]]; then
i3lock
elif [[ -f /usr/bin/betterlockscreen ]]; then
betterlockscreen -l
fi
;;
$suspend)
ans=$(confirm_exit &)
if [[ $ans == "yes" || $ans == "YES" || $ans == "y" || $ans == "Y" ]]; then
mpc -q pause
amixer set Master mute
systemctl suspend
elif [[ $ans == "no" || $ans == "NO" || $ans == "n" || $ans == "N" ]]; then
exit 0
else
msg
fi
;;
$logout)
ans=$(confirm_exit &)
if [[ $ans == "yes" || $ans == "YES" || $ans == "y" || $ans == "Y" ]]; then
if [[ "$DESKTOP_SESSION" == "Openbox" ]]; then
openbox --exit
elif [[ "$DESKTOP_SESSION" == "bspwm" ]]; then
bspc quit
elif [[ "$DESKTOP_SESSION" == "i3" ]]; then
i3-msg exit
fi
elif [[ $ans == "no" || $ans == "NO" || $ans == "n" || $ans == "N" ]]; then
exit 0
else
msg
fi
;;
esac

View File

@ -0,0 +1,60 @@
#!/usr/bin/env bash
## Author : Aditya Shakya
## Mail : adi1090x@gmail.com
## Github : @adi1090x
## Twitter : @adi1090x
dir="$HOME/.config/rofi/applets/android"
rofi_command="rofi -theme $dir/six.rasi"
# Error msg
msg() {
rofi -theme "$dir/message.rasi" -e "$1"
}
# Browser
if [[ -f /usr/bin/firefox ]]; then
app="firefox"
elif [[ -f /usr/bin/chromium ]]; then
app="chromium"
elif [[ -f /usr/bin/midori ]]; then
app="midori"
else
msg "No suitable web browser found!"
exit 1
fi
# Links
google=""
facebook=""
twitter=""
github=""
mail=""
youtube=""
# Variable passed to rofi
options="$google\n$facebook\n$twitter\n$github\n$mail\n$youtube"
chosen="$(echo -e "$options" | $rofi_command -p "Open In : Firefox" -dmenu -selected-row 0)"
case $chosen in
$google)
$app https://www.google.com &
;;
$facebook)
$app https://www.facebook.com &
;;
$twitter)
$app https://www.twitter.com &
;;
$github)
$app https://www.github.com &
;;
$mail)
$app https://www.gmail.com &
;;
$youtube)
$app https://www.youtube.com &
;;
esac

View File

@ -0,0 +1,48 @@
#!/usr/bin/env bash
## Author : Aditya Shakya
## Mail : adi1090x@gmail.com
## Github : @adi1090x
## Twitter : @adi1090x
dir="$HOME/.config/rofi/applets/android"
rofi_command="rofi -theme $dir/three.rasi"
# Error msg
msg() {
rofi -theme "$dir/message.rasi" -e "Please install 'scrot' first."
}
# Options
screen=""
area=""
window=""
# Variable passed to rofi
options="$screen\n$area\n$window"
chosen="$(echo -e "$options" | $rofi_command -p '' -dmenu -selected-row 1)"
case $chosen in
$screen)
if [[ -f /usr/bin/scrot ]]; then
sleep 1; scrot 'Screenshot_%Y-%m-%d-%S_$wx$h.png' -e 'mv $f $$(xdg-user-dir PICTURES) ; viewnior $$(xdg-user-dir PICTURES)/$f'
else
msg
fi
;;
$area)
if [[ -f /usr/bin/scrot ]]; then
scrot -s 'Screenshot_%Y-%m-%d-%S_$wx$h.png' -e 'mv $f $$(xdg-user-dir PICTURES) ; viewnior $$(xdg-user-dir PICTURES)/$f'
else
msg
fi
;;
$window)
if [[ -f /usr/bin/scrot ]]; then
sleep 1; scrot -u 'Screenshot_%Y-%m-%d-%S_$wx$h.png' -e 'mv $f $$(xdg-user-dir PICTURES) ; viewnior $$(xdg-user-dir PICTURES)/$f'
else
msg
fi
;;
esac

View File

@ -0,0 +1,91 @@
/*
*
* Author : Aditya Shakya
* Mail : adi1090x@gmail.com
* Github : @adi1090x
* Twitter : @adi1090x
*
*/
configuration {
disable-history: false;
fullscreen: false;
hide-scrollbar: true;
sidebar-mode: false;
}
@import "colors.rasi"
* {
background-color: @background;
text-color: @foreground;
}
window {
transparency: "real";
border-radius: 12px;
width: 100px;
location: east;
x-offset: -15px;
y-offset: 0px;
}
listview {
lines: 6;
margin: 8px;
spacing: 8px;
cycle: true;
dynamic: true;
layout: vertical;
}
mainbox {
background-color: @background;
children: [ listview ];
}
element {
background-color: @background-light;
text-color: @foreground;
orientation: vertical;
border-radius: 12px;
}
element-text {
font: "feather 20";
expand: true;
horizontal-align: 0.5;
vertical-align: 0;
margin: 10px 10px 33px 10px;
}
element normal.urgent,
element alternate.urgent {
background-color: @off;
text-color: @background;
border-radius: 10px;
}
element normal.active,
element alternate.active {
background-color: @on;
text-color: @background;
}
element selected {
background-color: @accent;
text-color: @background;
border: 0px;
border-radius: 10px;
border-color: @border;
}
element selected.urgent {
background-color: @on;
text-color: @background;
}
element selected.active {
background-color: @off;
color: @background;
}

View File

@ -0,0 +1,91 @@
/*
*
* Author : Aditya Shakya
* Mail : adi1090x@gmail.com
* Github : @adi1090x
* Twitter : @adi1090x
*
*/
configuration {
disable-history: false;
fullscreen: false;
hide-scrollbar: true;
sidebar-mode: false;
}
@import "colors.rasi"
* {
background-color: @background;
text-color: @foreground;
}
window {
transparency: "real";
border-radius: 12px;
width: 100px;
location: east;
x-offset: -15px;
y-offset: 0px;
}
listview {
lines: 3;
margin: 8px;
spacing: 8px;
cycle: true;
dynamic: true;
layout: vertical;
}
mainbox {
background-color: @background;
children: [ listview ];
}
element {
background-color: @background-light;
text-color: @foreground;
orientation: vertical;
border-radius: 12px;
}
element-text {
font: "feather 20";
expand: true;
horizontal-align: 0.5;
vertical-align: 0;
margin: 10px 10px 33px 10px;
}
element normal.urgent,
element alternate.urgent {
background-color: @off;
text-color: @background;
border-radius: 10px;
}
element normal.active,
element alternate.active {
background-color: @on;
text-color: @background;
}
element selected {
background-color: @accent;
text-color: @background;
border: 0px;
border-radius: 10px;
border-color: @border;
}
element selected.urgent {
background-color: @on;
text-color: @background;
}
element selected.active {
background-color: @off;
color: @background;
}

View File

@ -0,0 +1,56 @@
#!/usr/bin/env bash
## Author : Aditya Shakya
## Mail : adi1090x@gmail.com
## Github : @adi1090x
## Twitter : @adi1090x
dir="$HOME/.config/rofi/applets/android"
rofi_command="rofi -theme $dir/three.rasi"
## Get Volume
#VOLUME=$(amixer get Master | tail -n 1 | awk -F ' ' '{print $5}' | tr -d '[]%')
MUTE=$(amixer get Master | tail -n 1 | awk -F ' ' '{print $6}' | tr -d '[]%')
active=""
urgent=""
if [[ $MUTE == *"off"* ]]; then
active="-a 1"
else
urgent="-u 1"
fi
if [[ $MUTE == *"off"* ]]; then
active="-a 1"
else
urgent="-u 1"
fi
if [[ $MUTE == *"on"* ]]; then
VOLUME="$(amixer get Master | tail -n 1 | awk -F ' ' '{print $5}' | tr -d '[]%')%"
else
VOLUME="Mu..."
fi
## Icons
ICON_UP=""
ICON_DOWN=""
ICON_MUTED=""
options="$ICON_UP\n$ICON_MUTED\n$ICON_DOWN"
## Main
chosen="$(echo -e "$options" | $rofi_command -p "$VOLUME" -dmenu $active $urgent -selected-row 0)"
case $chosen in
$ICON_UP)
amixer -Mq set Master,0 5%+ unmute && notify-send -u low -t 1500 "Volume Up $ICON_UP"
;;
$ICON_DOWN)
amixer -Mq set Master,0 5%- unmute && notify-send -u low -t 1500 "Volume Down $ICON_DOWN"
;;
$ICON_MUTED)
amixer -q set Master toggle
;;
esac

View File

@ -0,0 +1,103 @@
#!/usr/bin/env bash
## Author : Aditya Shakya
## Mail : adi1090x@gmail.com
## Github : @adi1090x
## Twitter : @adi1090x
style="$($HOME/.config/rofi/applets/applets/style.sh)"
dir="$HOME/.config/rofi/applets/applets/configs/$style"
rofi_command="rofi -theme $dir/apps.rasi"
# Links
terminal=""
files=""
editor=""
browser=""
music=""
settings=""
# Error msg
msg() {
rofi -theme "$HOME/.config/rofi/applets/styles/message.rasi" -e "$1"
}
# Variable passed to rofi
options="$terminal\n$files\n$editor\n$browser\n$music\n$settings"
chosen="$(echo -e "$options" | $rofi_command -p "Most Used" -dmenu -selected-row 0)"
case $chosen in
$terminal)
if [[ -f /usr/bin/alacritty ]]; then
alacritty &
elif [[ -f /usr/bin/termite ]]; then
termite &
elif [[ -f /usr/bin/urxvt ]]; then
urxvt &
elif [[ -f /usr/bin/kitty ]]; then
kitty &
elif [[ -f /usr/bin/xterm ]]; then
xterm &
elif [[ -f /usr/bin/xfce4-terminal ]]; then
xfce4-terminal &
elif [[ -f /usr/bin/gnome-terminal ]]; then
gnome-terminal &
else
msg "No suitable terminal found!"
fi
;;
$files)
if [[ -f /usr/bin/spacefm ]]; then
spacefm &
elif [[ -f /usr/bin/thunar ]]; then
thunar &
elif [[ -f /usr/bin/pcmanfm ]]; then
pcmanfm &
else
msg "No suitable file manager found!"
fi
;;
$editor)
if [[ -f /usr/bin/geany ]]; then
geany &
elif [[ -f /usr/bin/leafpad ]]; then
leafpad &
elif [[ -f /usr/bin/mousepad ]]; then
mousepad &
elif [[ -f /usr/bin/code ]]; then
code &
else
msg "No suitable text editor found!"
fi
;;
$browser)
if [[ -f /usr/bin/firefox-developer-edition ]]; then
firefox-developer-edition &
elif [[ -f /usr/bin/chromium ]]; then
chromium &
elif [[ -f /usr/bin/midori ]]; then
midori &
else
msg "No suitable web browser found!"
fi
;;
$music)
if [[ -f /usr/bin/spotify ]]; then
spotify &
elif [[ -f /usr/bin/lxmusic ]]; then
lxmusic &
else
msg "No suitable music player found!"
fi
;;
$settings)
if [[ -f /usr/bin/lxappearance ]]; then
lxappearance &
elif [[ -f /usr/bin/xfce4-settings-manager ]]; then
xfce4-settings-manager &
else
msg "No suitable settings manager found!"
fi
;;
esac

View File

@ -0,0 +1,75 @@
#!/usr/bin/env bash
## Author : Aditya Shakya
## Mail : adi1090x@gmail.com
## Github : @adi1090x
## Twitter : @adi1090x
style="$($HOME/.config/rofi/applets/applets/style.sh)"
dir="$HOME/.config/rofi/applets/applets/configs/$style"
rofi_command="rofi -theme $dir/backlight.rasi"
# Error msg
msg() {
rofi -theme "$HOME/.config/rofi/applets/styles/message.rasi" -e "$1"
}
## Get Brightness
if [[ -f /usr/bin/blight ]]; then
DEVICE=$(ls /sys/class/backlight | head -n 1)
BNESS="$(blight -d $DEVICE get brightness)"
PERC="$(($BNESS*100/255))"
BLIGHT=${PERC%.*}
elif [[ -f /usr/bin/xbacklight ]]; then
VAR="$(xbacklight -get)"
BLIGHT="$(printf "%.0f\n" "$VAR")"
else
msg "No suitable backlight utility found!"
exit 1
fi
if [[ $BLIGHT -ge 1 ]] && [[ $BLIGHT -le 29 ]]; then
MSG="Low"
elif [[ $BLIGHT -ge 30 ]] && [[ $BLIGHT -le 49 ]]; then
MSG="Optimal"
elif [[ $BLIGHT -ge 50 ]] && [[ $BLIGHT -le 69 ]]; then
MSG="High"
elif [[ $BLIGHT -ge 70 ]] && [[ $BLIGHT -le 99 ]]; then
MSG="Too Much"
fi
## Icons
ICON_UP=""
ICON_DOWN=""
ICON_OPT=""
notify="notify-send -u low -t 1500"
options="$ICON_UP\n$ICON_OPT\n$ICON_DOWN"
## Main
chosen="$(echo -e "$options" | $rofi_command -p "$BLIGHT%" -dmenu -selected-row 1)"
case $chosen in
$ICON_UP)
if [[ -f /usr/bin/blight ]]; then
blight -d $DEVICE set +10% && $notify "Brightness Up $ICON_UP"
elif [[ -f /usr/bin/xbacklight ]]; then
xbacklight -inc 10 && $notify "Brightness Up $ICON_UP"
fi
;;
$ICON_DOWN)
if [[ -f /usr/bin/blight ]]; then
blight -d $DEVICE set -10% && $notify "Brightness Down $ICON_DOWN"
elif [[ -f /usr/bin/xbacklight ]]; then
xbacklight -dec 10 && $notify "Brightness Down $ICON_DOWN"
fi
;;
$ICON_OPT)
if [[ -f /usr/bin/blight ]]; then
blight -d $DEVICE set 25% && $notify "Optimal Brightness $ICON_OPT"
elif [[ -f /usr/bin/xbacklight ]]; then
xbacklight -set 30 && $notify "Optimal Brightness $ICON_OPT"
fi
;;
esac

View File

@ -0,0 +1,65 @@
#!/usr/bin/env bash
## Author : Aditya Shakya
## Mail : adi1090x@gmail.com
## Github : @adi1090x
## Twitter : @adi1090x
style="$($HOME/.config/rofi/applets/applets/style.sh)"
dir="$HOME/.config/rofi/applets/applets/configs/$style"
rofi_command="rofi -theme $dir/battery.rasi"
## Get data
BATTERY="$(acpi | awk -F ' ' '{print $4}' | tr -d \%,)"
CHARGE="$(acpi | awk -F ' ' '{print $3}' | tr -d \,)"
active=""
urgent=""
if [[ $CHARGE = *"Charging"* ]]; then
active="-a 1"
ICON_CHRG=""
MSG=$CHARGE
elif [[ $CHARGE = *"Full"* ]]; then
active="-u 1"
ICON_CHRG=""
MSG=$CHARGE
else
urgent="-u 1"
ICON_CHRG=""
MSG=$CHARGE
fi
# Discharging
#if [[ $CHARGE -eq 1 ]] && [[ $BATTERY -eq 100 ]]; then
# ICON_DISCHRG=""
if [[ $BATTERY -ge 5 ]] && [[ $BATTERY -le 19 ]]; then
ICON_DISCHRG=""
elif [[ $BATTERY -ge 20 ]] && [[ $BATTERY -le 39 ]]; then
ICON_DISCHRG=""
elif [[ $BATTERY -ge 40 ]] && [[ $BATTERY -le 59 ]]; then
ICON_DISCHRG=""
elif [[ $BATTERY -ge 60 ]] && [[ $BATTERY -le 79 ]]; then
ICON_DISCHRG=""
elif [[ $BATTERY -ge 80 ]] && [[ $BATTERY -le 100 ]]; then
ICON_DISCHRG=""
fi
## Icons
ICON_PMGR=""
options="$ICON_DISCHRG\n$ICON_CHRG\n$ICON_PMGR"
## Main
chosen="$(echo -e "$options" | $rofi_command -p "$BATTERY%" -dmenu $active $urgent -selected-row 0)"
case $chosen in
$ICON_CHRG)
;;
$ICON_DISCHRG)
;;
$ICON_PMGR)
xfce4-power-manager-settings
;;
esac

View File

@ -0,0 +1,127 @@
/*
*
* Author : Aditya Shakya
* Mail : adi1090x@gmail.com
* Github : @adi1090x
* Twitter : @adi1090x
*
*/
configuration {
font: "Fira Code Nerd Font 10";
disable-history: false;
fullscreen: false;
hide-scrollbar: true;
sidebar-mode: false;
}
@import "../../../styles/colors.rasi"
* {
background-color: @background;
text-color: @foreground;
}
window {
transparency: "real";
border-radius: 40px;
location: southeast;
width: 500px;
x-offset: -15px;
y-offset: -45px;
}
prompt {
enabled: true;
padding: 10px;
background-color: @background-light;
text-color: @accent;
border: 0px 0px 2px 0px;
border-radius: 25px;
border-color: @accent;
}
textbox-prompt-colon {
expand: false;
str: " Apps ";
background-color: @accent;
text-color: @background;
padding: 12px 10px 0px 10px;
border-radius: 25px;
}
inputbar {
children: [ textbox-prompt-colon, prompt ];
spacing: 12px;
background-color: @background;
text-color: @foreground;
expand: false;
border: 0px;
border-radius: 0px;
border-color: @accent;
margin: 0px 0px 0px 0px;
padding: 0px;
position: center;
}
listview {
columns: 6;
lines: 1;
spacing: 12px;
cycle: true;
dynamic: true;
layout: vertical;
}
mainbox {
background-color: @background;
children: [ inputbar, listview ];
spacing: 12px;
margin: 12px;
}
element {
background-color: @background-light;
text-color: @foreground;
orientation: vertical;
border-radius: 100%;
}
element-text {
font: "feather 20";
expand: true;
horizontal-align: 0.5;
vertical-align: 0;
margin: 5px 10px 30px 10px;
}
element normal.urgent,
element alternate.urgent {
background-color: @off;
text-color: @background;
border-radius: 100%;
}
element normal.active,
element alternate.active {
background-color: @on;
text-color: @background;
}
element selected {
background-color: @background-light;
text-color: @accent;
border: 0px 0px 2px 0px;
border-radius: 100%;
border-color: @accent;
}
element selected.urgent {
background-color: @on;
text-color: @background;
}
element selected.active {
background-color: @off;
color: @background;
}

View File

@ -0,0 +1,127 @@
/*
*
* Author : Aditya Shakya
* Mail : adi1090x@gmail.com
* Github : @adi1090x
* Twitter : @adi1090x
*
*/
configuration {
font: "Fira Code Nerd Font 10";
disable-history: false;
fullscreen: false;
hide-scrollbar: true;
sidebar-mode: false;
}
@import "../../../styles/colors.rasi"
* {
background-color: @background;
text-color: @foreground;
}
window {
transparency: "real";
border-radius: 40px;
location: southeast;
width: 250px;
x-offset: -15px;
y-offset: -45px;
}
prompt {
enabled: true;
padding: 10px;
background-color: @background-light;
text-color: @accent;
border: 0px 0px 2px 0px;
border-radius: 25px;
border-color: @accent;
}
textbox-prompt-colon {
expand: false;
str: " Brightness ";
background-color: @accent;
text-color: @background;
padding: 12px 10px 0px 10px;
border-radius: 25px;
}
inputbar {
children: [ textbox-prompt-colon, prompt ];
spacing: 12px;
background-color: @background;
text-color: @foreground;
expand: false;
border: 0px;
border-radius: 0px;
border-color: @accent;
margin: 0px 0px 0px 0px;
padding: 0px;
position: center;
}
listview {
columns: 3;
lines: 1;
spacing: 12px;
cycle: true;
dynamic: true;
layout: vertical;
}
mainbox {
background-color: @background;
children: [ inputbar, listview ];
spacing: 12px;
margin: 12px;
}
element {
background-color: @background-light;
text-color: @foreground;
orientation: vertical;
border-radius: 100%;
}
element-text {
font: "feather 20";
expand: true;
horizontal-align: 0.5;
vertical-align: 0;
margin: 5px 10px 30px 10px;
}
element normal.urgent,
element alternate.urgent {
background-color: @off;
text-color: @background;
border-radius: 100%;
}
element normal.active,
element alternate.active {
background-color: @on;
text-color: @background;
}
element selected {
background-color: @background-light;
text-color: @accent;
border: 0px 0px 2px 0px;
border-radius: 100%;
border-color: @accent;
}
element selected.urgent {
background-color: @on;
text-color: @background;
}
element selected.active {
background-color: @off;
color: @background;
}

View File

@ -0,0 +1,127 @@
/*
*
* Author : Aditya Shakya
* Mail : adi1090x@gmail.com
* Github : @adi1090x
* Twitter : @adi1090x
*
*/
configuration {
font: "Fira Code Nerd Font 10";
disable-history: false;
fullscreen: false;
hide-scrollbar: true;
sidebar-mode: false;
}
@import "../../../styles/colors.rasi"
* {
background-color: @background;
text-color: @foreground;
}
window {
transparency: "real";
border-radius: 40px;
location: southeast;
width: 260px;
x-offset: -15px;
y-offset: -45px;
}
prompt {
enabled: true;
padding: 10px;
background-color: @background-light;
text-color: @accent;
border: 0px 0px 2px 0px;
border-radius: 25px;
border-color: @accent;
}
textbox-prompt-colon {
expand: false;
str: " Battery ";
background-color: @accent;
text-color: @background;
padding: 12px 10px 0px 10px;
border-radius: 25px;
}
inputbar {
children: [ textbox-prompt-colon, prompt ];
spacing: 12px;
background-color: @background;
text-color: @foreground;
expand: false;
border: 0px;
border-radius: 0px;
border-color: @accent;
margin: 0px 0px 0px 0px;
padding: 0px;
position: center;
}
listview {
columns: 3;
lines: 1;
spacing: 12px;
cycle: true;
dynamic: true;
layout: vertical;
}
mainbox {
background-color: @background;
children: [ inputbar, listview ];
spacing: 12px;
margin: 12px;
}
element {
background-color: @background-light;
text-color: @foreground;
orientation: vertical;
border-radius: 100%;
}
element-text {
font: "Iosevka Nerd Font 20";
expand: true;
horizontal-align: 0.5;
vertical-align: 0;
margin: 5px 10px 30px 10px;
}
element normal.urgent,
element alternate.urgent {
background-color: @off;
text-color: @background;
border-radius: 100%;
}
element normal.active,
element alternate.active {
background-color: @on;
text-color: @background;
}
element selected {
background-color: @background-light;
text-color: @accent;
border: 0px 0px 2px 0px;
border-radius: 100%;
border-color: @accent;
}
element selected.urgent {
background-color: @on;
text-color: @background;
}
element selected.active {
background-color: @off;
color: @background;
}

View File

@ -0,0 +1,127 @@
/*
*
* Author : Aditya Shakya
* Mail : adi1090x@gmail.com
* Github : @adi1090x
* Twitter : @adi1090x
*
*/
configuration {
font: "Fira Code Nerd Font 10";
disable-history: false;
fullscreen: false;
hide-scrollbar: true;
sidebar-mode: false;
}
@import "../../../styles/colors.rasi"
* {
background-color: @background;
text-color: @foreground;
}
window {
transparency: "real";
border-radius: 40px;
location: southeast;
width: 500px;
x-offset: -15px;
y-offset: -45px;
}
prompt {
enabled: true;
padding: 10px;
background-color: @background-light;
text-color: @accent;
border: 0px 0px 2px 0px;
border-radius: 25px;
border-color: @accent;
}
textbox-prompt-colon {
expand: false;
str: " MPD ";
background-color: @accent;
text-color: @background;
padding: 12px 10px 0px 10px;
border-radius: 25px;
}
inputbar {
children: [ textbox-prompt-colon, prompt ];
spacing: 12px;
background-color: @background;
text-color: @foreground;
expand: false;
border: 0px;
border-radius: 0px;
border-color: @accent;
margin: 0px 0px 0px 0px;
padding: 0px;
position: center;
}
listview {
columns: 6;
lines: 1;
spacing: 12px;
cycle: true;
dynamic: true;
layout: vertical;
}
mainbox {
background-color: @background;
children: [ inputbar, listview ];
spacing: 12px;
margin: 12px;
}
element {
background-color: @background-light;
text-color: @foreground;
orientation: vertical;
border-radius: 100%;
}
element-text {
font: "feather 20";
expand: true;
horizontal-align: 0.5;
vertical-align: 0;
margin: 5px 10px 30px 10px;
}
element normal.urgent,
element alternate.urgent {
background-color: @off;
text-color: @background;
border-radius: 100%;
}
element normal.active,
element alternate.active {
background-color: @on;
text-color: @background;
}
element selected {
background-color: @background-light;
text-color: @accent;
border: 0px 0px 2px 0px;
border-radius: 100%;
border-color: @accent;
}
element selected.urgent {
background-color: @on;
text-color: @background;
}
element selected.active {
background-color: @off;
color: @background;
}

View File

@ -0,0 +1,127 @@
/*
*
* Author : Aditya Shakya
* Mail : adi1090x@gmail.com
* Github : @adi1090x
* Twitter : @adi1090x
*
*/
configuration {
font: "Fira Code Nerd Font 10";
disable-history: false;
fullscreen: false;
hide-scrollbar: true;
sidebar-mode: false;
}
@import "../../../styles/colors.rasi"
* {
background-color: @background;
text-color: @foreground;
}
window {
transparency: "real";
border-radius: 40px;
location: southeast;
width: 335px;
x-offset: -15px;
y-offset: -45px;
}
prompt {
enabled: true;
padding: 10px;
background-color: @background-light;
text-color: @accent;
border: 0px 0px 2px 0px;
border-radius: 25px;
border-color: @accent;
}
textbox-prompt-colon {
expand: false;
str: " Network ";
background-color: @accent;
text-color: @background;
padding: 12px 10px 0px 10px;
border-radius: 25px;
}
inputbar {
children: [ textbox-prompt-colon, prompt ];
spacing: 12px;
background-color: @background;
text-color: @foreground;
expand: false;
border: 0px;
border-radius: 0px;
border-color: @accent;
margin: 0px 0px 0px 0px;
padding: 0px;
position: center;
}
listview {
columns: 4;
lines: 1;
spacing: 12px;
cycle: true;
dynamic: true;
layout: vertical;
}
mainbox {
background-color: @background;
children: [ inputbar, listview ];
spacing: 12px;
margin: 12px;
}
element {
background-color: @background-light;
text-color: @foreground;
orientation: vertical;
border-radius: 100%;
}
element-text {
font: "feather 20";
expand: true;
horizontal-align: 0.5;
vertical-align: 0;
margin: 5px 10px 30px 10px;
}
element normal.urgent,
element alternate.urgent {
background-color: @off;
text-color: @background;
border-radius: 100%;
}
element normal.active,
element alternate.active {
background-color: @on;
text-color: @background;
}
element selected {
background-color: @background-light;
text-color: @accent;
border: 0px 0px 2px 0px;
border-radius: 100%;
border-color: @accent;
}
element selected.urgent {
background-color: @on;
text-color: @background;
}
element selected.active {
background-color: @off;
color: @background;
}

View File

@ -0,0 +1,127 @@
/*
*
* Author : Aditya Shakya
* Mail : adi1090x@gmail.com
* Github : @adi1090x
* Twitter : @adi1090x
*
*/
configuration {
font: "Fira Code Nerd Font 10";
disable-history: false;
fullscreen: false;
hide-scrollbar: true;
sidebar-mode: false;
}
@import "../../../styles/colors.rasi"
* {
background-color: @background;
text-color: @foreground;
}
window {
transparency: "real";
border-radius: 40px;
location: southeast;
width: 420px;
x-offset: -15px;
y-offset: -45px;
}
prompt {
enabled: true;
padding: 10px;
background-color: @background-light;
text-color: @accent;
border: 0px 0px 2px 0px;
border-radius: 25px;
border-color: @accent;
}
textbox-prompt-colon {
expand: false;
str: " System ";
background-color: @accent;
text-color: @background;
padding: 12px 10px 0px 10px;
border-radius: 25px;
}
inputbar {
children: [ textbox-prompt-colon, prompt ];
spacing: 12px;
background-color: @background;
text-color: @foreground;
expand: false;
border: 0px;
border-radius: 0px;
border-color: @accent;
margin: 0px 0px 0px 0px;
padding: 0px;
position: center;
}
listview {
columns: 5;
lines: 1;
spacing: 12px;
cycle: true;
dynamic: true;
layout: vertical;
}
mainbox {
background-color: @background;
children: [ inputbar, listview ];
spacing: 12px;
margin: 12px;
}
element {
background-color: @background-light;
text-color: @foreground;
orientation: vertical;
border-radius: 100%;
}
element-text {
font: "feather 20";
expand: true;
horizontal-align: 0.5;
vertical-align: 0;
margin: 5px 10px 30px 10px;
}
element normal.urgent,
element alternate.urgent {
background-color: @off;
text-color: @background;
border-radius: 100%;
}
element normal.active,
element alternate.active {
background-color: @on;
text-color: @background;
}
element selected {
background-color: @background-light;
text-color: @accent;
border: 0px 0px 2px 0px;
border-radius: 100%;
border-color: @accent;
}
element selected.urgent {
background-color: @on;
text-color: @background;
}
element selected.active {
background-color: @off;
color: @background;
}

View File

@ -0,0 +1,127 @@
/*
*
* Author : Aditya Shakya
* Mail : adi1090x@gmail.com
* Github : @adi1090x
* Twitter : @adi1090x
*
*/
configuration {
font: "Fira Code Nerd Font 10";
disable-history: false;
fullscreen: false;
hide-scrollbar: true;
sidebar-mode: false;
}
@import "../../../styles/colors.rasi"
* {
background-color: @background;
text-color: @foreground;
}
window {
transparency: "real";
border-radius: 40px;
location: southeast;
width: 500px;
x-offset: -15px;
y-offset: -45px;
}
prompt {
enabled: true;
padding: 10px;
background-color: @background-light;
text-color: @accent;
border: 0px 0px 2px 0px;
border-radius: 25px;
border-color: @accent;
}
textbox-prompt-colon {
expand: false;
str: " Quick Links ";
background-color: @accent;
text-color: @background;
padding: 12px 10px 0px 10px;
border-radius: 25px;
}
inputbar {
children: [ textbox-prompt-colon, prompt ];
spacing: 12px;
background-color: @background;
text-color: @foreground;
expand: false;
border: 0px;
border-radius: 0px;
border-color: @accent;
margin: 0px 0px 0px 0px;
padding: 0px;
position: center;
}
listview {
columns: 6;
lines: 1;
spacing: 12px;
cycle: true;
dynamic: true;
layout: vertical;
}
mainbox {
background-color: @background;
children: [ inputbar, listview ];
spacing: 12px;
margin: 12px;
}
element {
background-color: @background-light;
text-color: @foreground;
orientation: vertical;
border-radius: 100%;
}
element-text {
font: "feather 20";
expand: true;
horizontal-align: 0.5;
vertical-align: 0;
margin: 5px 10px 30px 10px;
}
element normal.urgent,
element alternate.urgent {
background-color: @off;
text-color: @background;
border-radius: 100%;
}
element normal.active,
element alternate.active {
background-color: @on;
text-color: @background;
}
element selected {
background-color: @background-light;
text-color: @accent;
border: 0px 0px 2px 0px;
border-radius: 100%;
border-color: @accent;
}
element selected.urgent {
background-color: @on;
text-color: @background;
}
element selected.active {
background-color: @off;
color: @background;
}

View File

@ -0,0 +1,127 @@
/*
*
* Author : Aditya Shakya
* Mail : adi1090x@gmail.com
* Github : @adi1090x
* Twitter : @adi1090x
*
*/
configuration {
font: "Fira Code Nerd Font 10";
disable-history: false;
fullscreen: false;
hide-scrollbar: true;
sidebar-mode: false;
}
@import "../../../styles/colors.rasi"
* {
background-color: @background;
text-color: @foreground;
}
window {
transparency: "real";
border-radius: 40px;
location: southeast;
width: 250px;
x-offset: -15px;
y-offset: -45px;
}
prompt {
enabled: true;
padding: 10px;
background-color: @background-light;
text-color: @accent;
border: 0px 0px 2px 0px;
border-radius: 25px;
border-color: @accent;
}
textbox-prompt-colon {
expand: false;
str: " Screenshot ";
background-color: @accent;
text-color: @background;
padding: 12px 10px 0px 10px;
border-radius: 25px;
}
inputbar {
children: [ textbox-prompt-colon, prompt ];
spacing: 12px;
background-color: @background;
text-color: @foreground;
expand: false;
border: 0px;
border-radius: 0px;
border-color: @accent;
margin: 0px 0px 0px 0px;
padding: 0px;
position: center;
}
listview {
columns: 3;
lines: 1;
spacing: 12px;
cycle: true;
dynamic: true;
layout: vertical;
}
mainbox {
background-color: @background;
children: [ inputbar, listview ];
spacing: 12px;
margin: 12px;
}
element {
background-color: @background-light;
text-color: @foreground;
orientation: vertical;
border-radius: 100%;
}
element-text {
font: "feather 20";
expand: true;
horizontal-align: 0.5;
vertical-align: 0;
margin: 5px 10px 30px 10px;
}
element normal.urgent,
element alternate.urgent {
background-color: @off;
text-color: @background;
border-radius: 100%;
}
element normal.active,
element alternate.active {
background-color: @on;
text-color: @background;
}
element selected {
background-color: @background-light;
text-color: @accent;
border: 0px 0px 2px 0px;
border-radius: 100%;
border-color: @accent;
}
element selected.urgent {
background-color: @on;
text-color: @background;
}
element selected.active {
background-color: @off;
color: @background;
}

View File

@ -0,0 +1,127 @@
/*
*
* Author : Aditya Shakya
* Mail : adi1090x@gmail.com
* Github : @adi1090x
* Twitter : @adi1090x
*
*/
configuration {
font: "Fira Code Nerd Font 10";
disable-history: false;
fullscreen: false;
hide-scrollbar: true;
sidebar-mode: false;
}
@import "../../../styles/colors.rasi"
* {
background-color: @background;
text-color: @foreground;
}
window {
transparency: "real";
border-radius: 40px;
location: southeast;
width: 450px;
x-offset: -15px;
y-offset: -45px;
}
prompt {
enabled: true;
padding: 10px;
background-color: @background-light;
text-color: @accent;
border: 0px 0px 2px 0px;
border-radius: 25px;
border-color: @accent;
}
textbox-prompt-colon {
expand: false;
str: " Time ";
background-color: @accent;
text-color: @background;
padding: 12px 10px 0px 10px;
border-radius: 25px;
}
inputbar {
children: [ textbox-prompt-colon, prompt ];
spacing: 12px;
background-color: @background;
text-color: @foreground;
expand: false;
border: 0px;
border-radius: 0px;
border-color: @accent;
margin: 0px 0px 0px 0px;
padding: 0px;
position: center;
}
listview {
columns: 3;
lines: 1;
spacing: 12px;
cycle: true;
dynamic: true;
layout: vertical;
}
mainbox {
background-color: @background;
children: [ inputbar, listview ];
spacing: 12px;
margin: 12px;
}
element {
background-color: @background-light;
text-color: @foreground;
orientation: vertical;
border-radius: 100%;
}
element-text {
font: "Hurmit Nerd Font Mono 32";
expand: true;
horizontal-align: 0.5;
vertical-align: 0;
margin: 5px 10px 50px 10px;
}
element normal.urgent,
element alternate.urgent {
background-color: @off;
text-color: @background;
border-radius: 100%;
}
element normal.active,
element alternate.active {
background-color: @on;
text-color: @background;
}
element selected {
background-color: @background-light;
text-color: @accent;
border: 0px 0px 2px 0px;
border-radius: 100%;
border-color: @accent;
}
element selected.urgent {
background-color: @on;
text-color: @background;
}
element selected.active {
background-color: @off;
color: @background;
}

View File

@ -0,0 +1,127 @@
/*
*
* Author : Aditya Shakya
* Mail : adi1090x@gmail.com
* Github : @adi1090x
* Twitter : @adi1090x
*
*/
configuration {
font: "Fira Code Nerd Font 10";
disable-history: false;
fullscreen: false;
hide-scrollbar: true;
sidebar-mode: false;
}
@import "../../../styles/colors.rasi"
* {
background-color: @background;
text-color: @foreground;
}
window {
transparency: "real";
border-radius: 40px;
location: southeast;
width: 250px;
x-offset: -15px;
y-offset: -45px;
}
prompt {
enabled: true;
padding: 10px;
background-color: @background-light;
text-color: @accent;
border: 0px 0px 2px 0px;
border-radius: 25px;
border-color: @accent;
}
textbox-prompt-colon {
expand: false;
str: " Volume ";
background-color: @accent;
text-color: @background;
padding: 12px 10px 0px 10px;
border-radius: 25px;
}
inputbar {
children: [ textbox-prompt-colon, prompt ];
spacing: 12px;
background-color: @background;
text-color: @foreground;
expand: false;
border: 0px;
border-radius: 0px;
border-color: @accent;
margin: 0px 0px 0px 0px;
padding: 0px;
position: center;
}
listview {
columns: 3;
lines: 1;
spacing: 12px;
cycle: true;
dynamic: true;
layout: vertical;
}
mainbox {
background-color: @background;
children: [ inputbar, listview ];
spacing: 12px;
margin: 12px;
}
element {
background-color: @background-light;
text-color: @foreground;
orientation: vertical;
border-radius: 100%;
}
element-text {
font: "feather 20";
expand: true;
horizontal-align: 0.5;
vertical-align: 0;
margin: 5px 10px 30px 10px;
}
element normal.urgent,
element alternate.urgent {
background-color: @off;
text-color: @background;
border-radius: 100%;
}
element normal.active,
element alternate.active {
background-color: @on;
text-color: @background;
}
element selected {
background-color: @background-light;
text-color: @accent;
border: 0px 0px 2px 0px;
border-radius: 100%;
border-color: @accent;
}
element selected.urgent {
background-color: @on;
text-color: @background;
}
element selected.active {
background-color: @off;
color: @background;
}

View File

@ -0,0 +1,127 @@
/*
*
* Author : Aditya Shakya
* Mail : adi1090x@gmail.com
* Github : @adi1090x
* Twitter : @adi1090x
*
*/
configuration {
font: "Fira Code Nerd Font 10";
disable-history: false;
fullscreen: false;
hide-scrollbar: true;
sidebar-mode: false;
}
@import "../../../styles/colors.rasi"
* {
background-color: @background;
text-color: @foreground;
}
window {
transparency: "real";
border-radius: 12px;
location: southeast;
width: 500px;
x-offset: -15px;
y-offset: -45px;
}
prompt {
enabled: true;
padding: 10px;
background-color: @background-light;
text-color: @accent;
border: 0px 2px 0px 2px;
border-radius: 10px;
border-color: @accent;
}
textbox-prompt-colon {
expand: false;
str: " Apps ";
background-color: @accent;
text-color: @background;
padding: 10px 10px 0px 10px;
border-radius: 10px;
}
inputbar {
children: [ textbox-prompt-colon, prompt ];
spacing: 12px;
background-color: @background;
text-color: @foreground;
expand: false;
border: 0px;
border-radius: 0px;
border-color: @accent;
margin: 0px 0px 0px 0px;
padding: 0px;
position: center;
}
listview {
columns: 6;
lines: 1;
spacing: 12px;
cycle: true;
dynamic: true;
layout: vertical;
}
mainbox {
background-color: @background;
children: [ inputbar, listview ];
spacing: 12px;
margin: 12px;
}
element {
background-color: @background-light;
text-color: @foreground;
orientation: vertical;
border-radius: 12px;
}
element-text {
font: "feather 20";
expand: true;
horizontal-align: 0.5;
vertical-align: 0;
margin: 5px 10px 30px 10px;
}
element normal.urgent,
element alternate.urgent {
background-color: @off;
text-color: @background;
border-radius: 12px;
}
element normal.active,
element alternate.active {
background-color: @on;
text-color: @background;
}
element selected {
background-color: @background-light;
text-color: @accent;
border: 0px 2px 0px 2px;
border-radius: 12px;
border-color: @accent;
}
element selected.urgent {
background-color: @on;
text-color: @background;
}
element selected.active {
background-color: @off;
color: @background;
}

View File

@ -0,0 +1,127 @@
/*
*
* Author : Aditya Shakya
* Mail : adi1090x@gmail.com
* Github : @adi1090x
* Twitter : @adi1090x
*
*/
configuration {
font: "Fira Code Nerd Font 10";
disable-history: false;
fullscreen: false;
hide-scrollbar: true;
sidebar-mode: false;
}
@import "../../../styles/colors.rasi"
* {
background-color: @background;
text-color: @foreground;
}
window {
transparency: "real";
border-radius: 12px;
location: southeast;
width: 250px;
x-offset: -15px;
y-offset: -45px;
}
prompt {
enabled: true;
padding: 10px;
background-color: @background-light;
text-color: @accent;
border: 0px 2px 0px 2px;
border-radius: 10px;
border-color: @accent;
}
textbox-prompt-colon {
expand: false;
str: " Brightness ";
background-color: @accent;
text-color: @background;
padding: 10px 10px 0px 10px;
border-radius: 10px;
}
inputbar {
children: [ textbox-prompt-colon, prompt ];
spacing: 12px;
background-color: @background;
text-color: @foreground;
expand: false;
border: 0px;
border-radius: 0px;
border-color: @accent;
margin: 0px 0px 0px 0px;
padding: 0px;
position: center;
}
listview {
columns: 3;
lines: 1;
spacing: 12px;
cycle: true;
dynamic: true;
layout: vertical;
}
mainbox {
background-color: @background;
children: [ inputbar, listview ];
spacing: 12px;
margin: 12px;
}
element {
background-color: @background-light;
text-color: @foreground;
orientation: vertical;
border-radius: 12px;
}
element-text {
font: "feather 20";
expand: true;
horizontal-align: 0.5;
vertical-align: 0;
margin: 5px 10px 30px 10px;
}
element normal.urgent,
element alternate.urgent {
background-color: @off;
text-color: @background;
border-radius: 12px;
}
element normal.active,
element alternate.active {
background-color: @on;
text-color: @background;
}
element selected {
background-color: @background-light;
text-color: @accent;
border: 0px 2px 0px 2px;
border-radius: 12px;
border-color: @accent;
}
element selected.urgent {
background-color: @on;
text-color: @background;
}
element selected.active {
background-color: @off;
color: @background;
}

View File

@ -0,0 +1,127 @@
/*
*
* Author : Aditya Shakya
* Mail : adi1090x@gmail.com
* Github : @adi1090x
* Twitter : @adi1090x
*
*/
configuration {
font: "Fira Code Nerd Font 10";
disable-history: false;
fullscreen: false;
hide-scrollbar: true;
sidebar-mode: false;
}
@import "../../../styles/colors.rasi"
* {
background-color: @background;
text-color: @foreground;
}
window {
transparency: "real";
border-radius: 12px;
location: southeast;
width: 250px;
x-offset: -15px;
y-offset: -45px;
}
prompt {
enabled: true;
padding: 10px;
background-color: @background-light;
text-color: @accent;
border: 0px 2px 0px 2px;
border-radius: 10px;
border-color: @accent;
}
textbox-prompt-colon {
expand: false;
str: " Battery ";
background-color: @accent;
text-color: @background;
padding: 10px 10px 0px 10px;
border-radius: 10px;
}
inputbar {
children: [ textbox-prompt-colon, prompt ];
spacing: 12px;
background-color: @background;
text-color: @foreground;
expand: false;
border: 0px;
border-radius: 0px;
border-color: @accent;
margin: 0px 0px 0px 0px;
padding: 0px;
position: center;
}
listview {
columns: 3;
lines: 1;
spacing: 12px;
cycle: true;
dynamic: true;
layout: vertical;
}
mainbox {
background-color: @background;
children: [ inputbar, listview ];
spacing: 12px;
margin: 12px;
}
element {
background-color: @background-light;
text-color: @foreground;
orientation: vertical;
border-radius: 12px;
}
element-text {
font: "Iosevka Nerd Font 20";
expand: true;
horizontal-align: 0.5;
vertical-align: 0;
margin: 5px 10px 30px 10px;
}
element normal.urgent,
element alternate.urgent {
background-color: @off;
text-color: @background;
border-radius: 12px;
}
element normal.active,
element alternate.active {
background-color: @on;
text-color: @background;
}
element selected {
background-color: @background-light;
text-color: @accent;
border: 0px 2px 0px 2px;
border-radius: 12px;
border-color: @accent;
}
element selected.urgent {
background-color: @on;
text-color: @background;
}
element selected.active {
background-color: @off;
color: @background;
}

View File

@ -0,0 +1,127 @@
/*
*
* Author : Aditya Shakya
* Mail : adi1090x@gmail.com
* Github : @adi1090x
* Twitter : @adi1090x
*
*/
configuration {
font: "Fira Code Nerd Font 10";
disable-history: false;
fullscreen: false;
hide-scrollbar: true;
sidebar-mode: false;
}
@import "../../../styles/colors.rasi"
* {
background-color: @background;
text-color: @foreground;
}
window {
transparency: "real";
border-radius: 12px;
location: southeast;
width: 500px;
x-offset: -15px;
y-offset: -45px;
}
prompt {
enabled: true;
padding: 10px;
background-color: @background-light;
text-color: @accent;
border: 0px 2px 0px 2px;
border-radius: 10px;
border-color: @accent;
}
textbox-prompt-colon {
expand: false;
str: " MPD ";
background-color: @accent;
text-color: @background;
padding: 10px 10px 0px 10px;
border-radius: 10px;
}
inputbar {
children: [ textbox-prompt-colon, prompt ];
spacing: 12px;
background-color: @background;
text-color: @foreground;
expand: false;
border: 0px;
border-radius: 0px;
border-color: @accent;
margin: 0px 0px 0px 0px;
padding: 0px;
position: center;
}
listview {
columns: 6;
lines: 1;
spacing: 12px;
cycle: true;
dynamic: true;
layout: vertical;
}
mainbox {
background-color: @background;
children: [ inputbar, listview ];
spacing: 12px;
margin: 12px;
}
element {
background-color: @background-light;
text-color: @foreground;
orientation: vertical;
border-radius: 12px;
}
element-text {
font: "feather 20";
expand: true;
horizontal-align: 0.5;
vertical-align: 0;
margin: 5px 10px 30px 10px;
}
element normal.urgent,
element alternate.urgent {
background-color: @off;
text-color: @background;
border-radius: 12px;
}
element normal.active,
element alternate.active {
background-color: @on;
text-color: @background;
}
element selected {
background-color: @background-light;
text-color: @accent;
border: 0px 2px 0px 2px;
border-radius: 12px;
border-color: @accent;
}
element selected.urgent {
background-color: @on;
text-color: @background;
}
element selected.active {
background-color: @off;
color: @background;
}

View File

@ -0,0 +1,127 @@
/*
*
* Author : Aditya Shakya
* Mail : adi1090x@gmail.com
* Github : @adi1090x
* Twitter : @adi1090x
*
*/
configuration {
font: "Fira Code Nerd Font 10";
disable-history: false;
fullscreen: false;
hide-scrollbar: true;
sidebar-mode: false;
}
@import "../../../styles/colors.rasi"
* {
background-color: @background;
text-color: @foreground;
}
window {
transparency: "real";
border-radius: 12px;
location: southeast;
width: 335px;
x-offset: -15px;
y-offset: -45px;
}
prompt {
enabled: true;
padding: 10px;
background-color: @background-light;
text-color: @accent;
border: 0px 2px 0px 2px;
border-radius: 10px;
border-color: @accent;
}
textbox-prompt-colon {
expand: false;
str: " Network ";
background-color: @accent;
text-color: @background;
padding: 10px 10px 0px 10px;
border-radius: 10px;
}
inputbar {
children: [ textbox-prompt-colon, prompt ];
spacing: 12px;
background-color: @background;
text-color: @foreground;
expand: false;
border: 0px;
border-radius: 0px;
border-color: @accent;
margin: 0px 0px 0px 0px;
padding: 0px;
position: center;
}
listview {
columns: 4;
lines: 1;
spacing: 12px;
cycle: true;
dynamic: true;
layout: vertical;
}
mainbox {
background-color: @background;
children: [ inputbar, listview ];
spacing: 12px;
margin: 12px;
}
element {
background-color: @background-light;
text-color: @foreground;
orientation: vertical;
border-radius: 12px;
}
element-text {
font: "feather 20";
expand: true;
horizontal-align: 0.5;
vertical-align: 0;
margin: 5px 10px 30px 10px;
}
element normal.urgent,
element alternate.urgent {
background-color: @off;
text-color: @background;
border-radius: 12px;
}
element normal.active,
element alternate.active {
background-color: @on;
text-color: @background;
}
element selected {
background-color: @background-light;
text-color: @accent;
border: 0px 2px 0px 2px;
border-radius: 12px;
border-color: @accent;
}
element selected.urgent {
background-color: @on;
text-color: @background;
}
element selected.active {
background-color: @off;
color: @background;
}

View File

@ -0,0 +1,127 @@
/*
*
* Author : Aditya Shakya
* Mail : adi1090x@gmail.com
* Github : @adi1090x
* Twitter : @adi1090x
*
*/
configuration {
font: "Fira Code Nerd Font 10";
disable-history: false;
fullscreen: false;
hide-scrollbar: true;
sidebar-mode: false;
}
@import "../../../styles/colors.rasi"
* {
background-color: @background;
text-color: @foreground;
}
window {
transparency: "real";
border-radius: 12px;
location: southeast;
width: 420px;
x-offset: -15px;
y-offset: -45px;
}
prompt {
enabled: true;
padding: 10px;
background-color: @background-light;
text-color: @accent;
border: 0px 2px 0px 2px;
border-radius: 10px;
border-color: @accent;
}
textbox-prompt-colon {
expand: false;
str: " System ";
background-color: @accent;
text-color: @background;
padding: 10px 10px 0px 10px;
border-radius: 10px;
}
inputbar {
children: [ textbox-prompt-colon, prompt ];
spacing: 12px;
background-color: @background;
text-color: @foreground;
expand: false;
border: 0px;
border-radius: 0px;
border-color: @accent;
margin: 0px 0px 0px 0px;
padding: 0px;
position: center;
}
listview {
columns: 5;
lines: 1;
spacing: 12px;
cycle: true;
dynamic: true;
layout: vertical;
}
mainbox {
background-color: @background;
children: [ inputbar, listview ];
spacing: 12px;
margin: 12px;
}
element {
background-color: @background-light;
text-color: @foreground;
orientation: vertical;
border-radius: 12px;
}
element-text {
font: "feather 20";
expand: true;
horizontal-align: 0.5;
vertical-align: 0;
margin: 5px 10px 30px 10px;
}
element normal.urgent,
element alternate.urgent {
background-color: @off;
text-color: @background;
border-radius: 12px;
}
element normal.active,
element alternate.active {
background-color: @on;
text-color: @background;
}
element selected {
background-color: @background-light;
text-color: @accent;
border: 0px 2px 0px 2px;
border-radius: 12px;
border-color: @accent;
}
element selected.urgent {
background-color: @on;
text-color: @background;
}
element selected.active {
background-color: @off;
color: @background;
}

View File

@ -0,0 +1,127 @@
/*
*
* Author : Aditya Shakya
* Mail : adi1090x@gmail.com
* Github : @adi1090x
* Twitter : @adi1090x
*
*/
configuration {
font: "Fira Code Nerd Font 10";
disable-history: false;
fullscreen: false;
hide-scrollbar: true;
sidebar-mode: false;
}
@import "../../../styles/colors.rasi"
* {
background-color: @background;
text-color: @foreground;
}
window {
transparency: "real";
border-radius: 12px;
location: southeast;
width: 500px;
x-offset: -15px;
y-offset: -45px;
}
prompt {
enabled: true;
padding: 10px;
background-color: @background-light;
text-color: @accent;
border: 0px 2px 0px 2px;
border-radius: 10px;
border-color: @accent;
}
textbox-prompt-colon {
expand: false;
str: " Quick Links ";
background-color: @accent;
text-color: @background;
padding: 10px 10px 0px 10px;
border-radius: 10px;
}
inputbar {
children: [ textbox-prompt-colon, prompt ];
spacing: 12px;
background-color: @background;
text-color: @foreground;
expand: false;
border: 0px;
border-radius: 0px;
border-color: @accent;
margin: 0px 0px 0px 0px;
padding: 0px;
position: center;
}
listview {
columns: 6;
lines: 1;
spacing: 12px;
cycle: true;
dynamic: true;
layout: vertical;
}
mainbox {
background-color: @background;
children: [ inputbar, listview ];
spacing: 12px;
margin: 12px;
}
element {
background-color: @background-light;
text-color: @foreground;
orientation: vertical;
border-radius: 12px;
}
element-text {
font: "feather 20";
expand: true;
horizontal-align: 0.5;
vertical-align: 0;
margin: 5px 10px 30px 10px;
}
element normal.urgent,
element alternate.urgent {
background-color: @off;
text-color: @background;
border-radius: 12px;
}
element normal.active,
element alternate.active {
background-color: @on;
text-color: @background;
}
element selected {
background-color: @background-light;
text-color: @accent;
border: 0px 2px 0px 2px;
border-radius: 12px;
border-color: @accent;
}
element selected.urgent {
background-color: @on;
text-color: @background;
}
element selected.active {
background-color: @off;
color: @background;
}

View File

@ -0,0 +1,127 @@
/*
*
* Author : Aditya Shakya
* Mail : adi1090x@gmail.com
* Github : @adi1090x
* Twitter : @adi1090x
*
*/
configuration {
font: "Fira Code Nerd Font 10";
disable-history: false;
fullscreen: false;
hide-scrollbar: true;
sidebar-mode: false;
}
@import "../../../styles/colors.rasi"
* {
background-color: @background;
text-color: @foreground;
}
window {
transparency: "real";
border-radius: 12px;
location: SouthEast;
width: 250px;
x-offset: -15px;
y-offset: -45px;
}
prompt {
enabled: true;
padding: 10px;
background-color: @background-light;
text-color: @accent;
border: 0px 2px 0px 2px;
border-radius: 10px;
border-color: @accent;
}
textbox-prompt-colon {
expand: false;
str: " Screenshot ";
background-color: @accent;
text-color: @background;
padding: 10px 10px 0px 10px;
border-radius: 10px;
}
inputbar {
children: [ textbox-prompt-colon, prompt ];
spacing: 12px;
background-color: @background;
text-color: @foreground;
expand: false;
border: 0px;
border-radius: 0px;
border-color: @accent;
margin: 0px 0px 0px 0px;
padding: 0px;
position: center;
}
listview {
columns: 3;
lines: 1;
spacing: 12px;
cycle: true;
dynamic: true;
layout: vertical;
}
mainbox {
background-color: @background;
children: [ inputbar, listview ];
spacing: 12px;
margin: 12px;
}
element {
background-color: @background-light;
text-color: @foreground;
orientation: vertical;
border-radius: 12px;
}
element-text {
font: "feather 16";
expand: true;
horizontal-align: 0.5;
vertical-align: 0;
margin: 5px 10px 30px 10px;
}
element normal.urgent,
element alternate.urgent {
background-color: @off;
text-color: @background;
border-radius: 12px;
}
element normal.active,
element alternate.active {
background-color: @on;
text-color: @background;
}
element selected {
background-color: @background-light;
text-color: @accent;
border: 0px 2px 0px 2px;
border-radius: 12px;
border-color: @accent;
}
element selected.urgent {
background-color: @on;
text-color: @background;
}
element selected.active {
background-color: @off;
color: @background;
}

View File

@ -0,0 +1,127 @@
/*
*
* Author : Aditya Shakya
* Mail : adi1090x@gmail.com
* Github : @adi1090x
* Twitter : @adi1090x
*
*/
configuration {
font: "Fira Code Nerd Font 10";
disable-history: false;
fullscreen: false;
hide-scrollbar: true;
sidebar-mode: false;
}
@import "../../../styles/colors.rasi"
* {
background-color: @background;
text-color: @foreground;
}
window {
transparency: "real";
border-radius: 12px;
location: southeast;
width: 450px;
x-offset: -15px;
y-offset: -45px;
}
prompt {
enabled: true;
padding: 10px;
background-color: @background-light;
text-color: @accent;
border: 0px 2px 0px 2px;
border-radius: 10px;
border-color: @accent;
}
textbox-prompt-colon {
expand: false;
str: " Time ";
background-color: @accent;
text-color: @background;
padding: 10px 10px 0px 10px;
border-radius: 10px;
}
inputbar {
children: [ textbox-prompt-colon, prompt ];
spacing: 12px;
background-color: @background;
text-color: @foreground;
expand: false;
border: 0px;
border-radius: 0px;
border-color: @accent;
margin: 0px 0px 0px 0px;
padding: 0px;
position: center;
}
listview {
columns: 3;
lines: 1;
spacing: 12px;
cycle: true;
dynamic: true;
layout: vertical;
}
mainbox {
background-color: @background;
children: [ inputbar, listview ];
spacing: 12px;
margin: 12px;
}
element {
background-color: @background-light;
text-color: @foreground;
orientation: vertical;
border-radius: 12px;
}
element-text {
font: "Hurmit Nerd Font Mono 32";
expand: true;
horizontal-align: 0.5;
vertical-align: 0;
margin: 5px 10px 50px 10px;
}
element normal.urgent,
element alternate.urgent {
background-color: @off;
text-color: @background;
border-radius: 12px;
}
element normal.active,
element alternate.active {
background-color: @on;
text-color: @background;
}
element selected {
background-color: @background-light;
text-color: @accent;
border: 0px 2px 0px 2px;
border-radius: 12px;
border-color: @accent;
}
element selected.urgent {
background-color: @on;
text-color: @background;
}
element selected.active {
background-color: @off;
color: @background;
}

View File

@ -0,0 +1,127 @@
/*
*
* Author : Aditya Shakya
* Mail : adi1090x@gmail.com
* Github : @adi1090x
* Twitter : @adi1090x
*
*/
configuration {
font: "Fira Code Nerd Font 10";
disable-history: false;
fullscreen: false;
hide-scrollbar: true;
sidebar-mode: false;
}
@import "../../../styles/colors.rasi"
* {
background-color: @background;
text-color: @foreground;
}
window {
transparency: "real";
border-radius: 12px;
location: SouthEast;
width: 250px;
x-offset: -15px;
y-offset: -45px;
}
prompt {
enabled: true;
padding: 10px;
background-color: @background-light;
text-color: @accent;
border: 0px 2px 0px 2px;
border-radius: 10px;
border-color: @accent;
}
textbox-prompt-colon {
expand: false;
str: " Volume ";
background-color: @accent;
text-color: @background;
padding: 10px 10px 0px 10px;
border-radius: 10px;
}
inputbar {
children: [ textbox-prompt-colon, prompt ];
spacing: 12px;
background-color: @background;
text-color: @foreground;
expand: false;
border: 0px;
border-radius: 0px;
border-color: @accent;
margin: 0px 0px 0px 0px;
padding: 0px;
position: center;
}
listview {
columns: 3;
lines: 1;
spacing: 12px;
cycle: true;
dynamic: true;
layout: vertical;
}
mainbox {
background-color: @background;
children: [ inputbar, listview ];
spacing: 12px;
margin: 12px;
}
element {
background-color: @background-light;
text-color: @foreground;
orientation: vertical;
border-radius: 12px;
}
element-text {
font: "feather 16";
expand: true;
horizontal-align: 0.5;
vertical-align: 0;
margin: 5px 10px 30px 10px;
}
element normal.urgent,
element alternate.urgent {
background-color: @off;
text-color: @background;
border-radius: 12px;
}
element normal.active,
element alternate.active {
background-color: @on;
text-color: @background;
}
element selected {
background-color: @background-light;
text-color: @accent;
border: 0px 2px 0px 2px;
border-radius: 12px;
border-color: @accent;
}
element selected.urgent {
background-color: @on;
text-color: @background;
}
element selected.active {
background-color: @off;
color: @background;
}

View File

@ -0,0 +1,126 @@
/*
*
* Author : Aditya Shakya
* Mail : adi1090x@gmail.com
* Github : @adi1090x
* Twitter : @adi1090x
*
*/
configuration {
font: "Fira Code Nerd Font 10";
disable-history: false;
fullscreen: false;
hide-scrollbar: true;
sidebar-mode: false;
}
@import "../../../styles/colors.rasi"
* {
background-color: @background;
text-color: @foreground;
}
window {
transparency: "real";
border-radius: 0px;
location: southeast;
width: 500px;
x-offset: -15px;
y-offset: -45px;
}
prompt {
enabled: true;
padding: 10px;
background-color: @background-light;
text-color: @accent;
border: 2px 2px 2px 2px;
border-radius: 0px;
border-color: @accent;
}
textbox-prompt-colon {
expand: false;
str: " Apps ";
background-color: @accent;
text-color: @background;
padding: 12px 10px 0px 10px;
}
inputbar {
children: [ textbox-prompt-colon, prompt ];
spacing: 0px;
background-color: @background;
text-color: @foreground;
expand: false;
border: 0px;
border-radius: 0px;
border-color: @accent;
margin: 0px 0px 0px 0px;
padding: 0px;
position: center;
}
listview {
columns: 6;
lines: 1;
spacing: 12px;
cycle: true;
dynamic: true;
layout: vertical;
}
mainbox {
background-color: @background;
children: [ inputbar, listview ];
spacing: 12px;
margin: 12px;
}
element {
background-color: @background-light;
text-color: @foreground;
orientation: vertical;
border-radius: 0px;
}
element-text {
font: "feather 20";
expand: true;
horizontal-align: 0.5;
vertical-align: 0;
margin: 5px 10px 30px 10px;
}
element normal.urgent,
element alternate.urgent {
background-color: @off;
text-color: @background;
border-radius: 0px;
}
element normal.active,
element alternate.active {
background-color: @on;
text-color: @background;
}
element selected {
background-color: @accent;
text-color: @background;
border: 0px;
border-radius: 0px;
border-color: @border;
}
element selected.urgent {
background-color: @on;
text-color: @background;
}
element selected.active {
background-color: @off;
color: @background;
}

View File

@ -0,0 +1,126 @@
/*
*
* Author : Aditya Shakya
* Mail : adi1090x@gmail.com
* Github : @adi1090x
* Twitter : @adi1090x
*
*/
configuration {
font: "Fira Code Nerd Font 10";
disable-history: false;
fullscreen: false;
hide-scrollbar: true;
sidebar-mode: false;
}
@import "../../../styles/colors.rasi"
* {
background-color: @background;
text-color: @foreground;
}
window {
transparency: "real";
border-radius: 0px;
location: southeast;
width: 250px;
x-offset: -15px;
y-offset: -45px;
}
prompt {
enabled: true;
padding: 10px;
background-color: @background-light;
text-color: @accent;
border: 2px 2px 2px 2px;
border-radius: 0px;
border-color: @accent;
}
textbox-prompt-colon {
expand: false;
str: " Brightness ";
background-color: @accent;
text-color: @background;
padding: 12px 10px 0px 10px;
}
inputbar {
children: [ textbox-prompt-colon, prompt ];
spacing: 0px;
background-color: @background;
text-color: @foreground;
expand: false;
border: 0px;
border-radius: 0px;
border-color: @accent;
margin: 0px 0px 0px 0px;
padding: 0px;
position: center;
}
listview {
columns: 3;
lines: 1;
spacing: 12px;
cycle: true;
dynamic: true;
layout: vertical;
}
mainbox {
background-color: @background;
children: [ inputbar, listview ];
spacing: 12px;
margin: 12px;
}
element {
background-color: @background-light;
text-color: @foreground;
orientation: vertical;
border-radius: 0px;
}
element-text {
font: "feather 20";
expand: true;
horizontal-align: 0.5;
vertical-align: 0;
margin: 5px 10px 30px 10px;
}
element normal.urgent,
element alternate.urgent {
background-color: @off;
text-color: @background;
border-radius: 0px;
}
element normal.active,
element alternate.active {
background-color: @on;
text-color: @background;
}
element selected {
background-color: @accent;
text-color: @background;
border: 0px;
border-radius: 0px;
border-color: @border;
}
element selected.urgent {
background-color: @on;
text-color: @background;
}
element selected.active {
background-color: @off;
color: @background;
}

View File

@ -0,0 +1,126 @@
/*
*
* Author : Aditya Shakya
* Mail : adi1090x@gmail.com
* Github : @adi1090x
* Twitter : @adi1090x
*
*/
configuration {
font: "Fira Code Nerd Font 10";
disable-history: false;
fullscreen: false;
hide-scrollbar: true;
sidebar-mode: false;
}
@import "../../../styles/colors.rasi"
* {
background-color: @background;
text-color: @foreground;
}
window {
transparency: "real";
border-radius: 0px;
location: southeast;
width: 250px;
x-offset: -15px;
y-offset: -45px;
}
prompt {
enabled: true;
padding: 10px;
background-color: @background-light;
text-color: @accent;
border: 2px 2px 2px 2px;
border-radius: 0px;
border-color: @accent;
}
textbox-prompt-colon {
expand: false;
str: " Battery ";
background-color: @accent;
text-color: @background;
padding: 12px 10px 0px 10px;
}
inputbar {
children: [ textbox-prompt-colon, prompt ];
spacing: 0px;
background-color: @background;
text-color: @foreground;
expand: false;
border: 0px;
border-radius: 0px;
border-color: @accent;
margin: 0px 0px 0px 0px;
padding: 0px;
position: center;
}
listview {
columns: 3;
lines: 1;
spacing: 12px;
cycle: true;
dynamic: true;
layout: vertical;
}
mainbox {
background-color: @background;
children: [ inputbar, listview ];
spacing: 12px;
margin: 12px;
}
element {
background-color: @background-light;
text-color: @foreground;
orientation: vertical;
border-radius: 0px;
}
element-text {
font: "Iosevka Nerd Font 20";
expand: true;
horizontal-align: 0.5;
vertical-align: 0;
margin: 5px 10px 30px 10px;
}
element normal.urgent,
element alternate.urgent {
background-color: @off;
text-color: @background;
border-radius: 0px;
}
element normal.active,
element alternate.active {
background-color: @on;
text-color: @background;
}
element selected {
background-color: @accent;
text-color: @background;
border: 0px;
border-radius: 0px;
border-color: @border;
}
element selected.urgent {
background-color: @on;
text-color: @background;
}
element selected.active {
background-color: @off;
color: @background;
}

View File

@ -0,0 +1,126 @@
/*
*
* Author : Aditya Shakya
* Mail : adi1090x@gmail.com
* Github : @adi1090x
* Twitter : @adi1090x
*
*/
configuration {
font: "Fira Code Nerd Font 10";
disable-history: false;
fullscreen: false;
hide-scrollbar: true;
sidebar-mode: false;
}
@import "../../../styles/colors.rasi"
* {
background-color: @background;
text-color: @foreground;
}
window {
transparency: "real";
border-radius: 0px;
location: southeast;
width: 500px;
x-offset: -15px;
y-offset: -45px;
}
prompt {
enabled: true;
padding: 10px;
background-color: @background-light;
text-color: @accent;
border: 2px 2px 2px 2px;
border-radius: 0px;
border-color: @accent;
}
textbox-prompt-colon {
expand: false;
str: " MPD ";
background-color: @accent;
text-color: @background;
padding: 12px 10px 0px 10px;
}
inputbar {
children: [ textbox-prompt-colon, prompt ];
spacing: 0px;
background-color: @background;
text-color: @foreground;
expand: false;
border: 0px;
border-radius: 0px;
border-color: @accent;
margin: 0px 0px 0px 0px;
padding: 0px;
position: center;
}
listview {
columns: 6;
lines: 1;
spacing: 12px;
cycle: true;
dynamic: true;
layout: vertical;
}
mainbox {
background-color: @background;
children: [ inputbar, listview ];
spacing: 12px;
margin: 12px;
}
element {
background-color: @background-light;
text-color: @foreground;
orientation: vertical;
border-radius: 0px;
}
element-text {
font: "feather 20";
expand: true;
horizontal-align: 0.5;
vertical-align: 0;
margin: 5px 10px 30px 10px;
}
element normal.urgent,
element alternate.urgent {
background-color: @off;
text-color: @background;
border-radius: 0px;
}
element normal.active,
element alternate.active {
background-color: @on;
text-color: @background;
}
element selected {
background-color: @accent;
text-color: @background;
border: 0px;
border-radius: 0px;
border-color: @border;
}
element selected.urgent {
background-color: @on;
text-color: @background;
}
element selected.active {
background-color: @off;
color: @background;
}

View File

@ -0,0 +1,126 @@
/*
*
* Author : Aditya Shakya
* Mail : adi1090x@gmail.com
* Github : @adi1090x
* Twitter : @adi1090x
*
*/
configuration {
font: "Fira Code Nerd Font 10";
disable-history: false;
fullscreen: false;
hide-scrollbar: true;
sidebar-mode: false;
}
@import "../../../styles/colors.rasi"
* {
background-color: @background;
text-color: @foreground;
}
window {
transparency: "real";
border-radius: 0px;
location: southeast;
width: 350px;
x-offset: -15px;
y-offset: -45px;
}
prompt {
enabled: true;
padding: 10px;
background-color: @background-light;
text-color: @accent;
border: 2px 2px 2px 2px;
border-radius: 0px;
border-color: @accent;
}
textbox-prompt-colon {
expand: false;
str: " Network ";
background-color: @accent;
text-color: @background;
padding: 12px 10px 0px 10px;
}
inputbar {
children: [ textbox-prompt-colon, prompt ];
spacing: 0px;
background-color: @background;
text-color: @foreground;
expand: false;
border: 0px;
border-radius: 0px;
border-color: @accent;
margin: 0px 0px 0px 0px;
padding: 0px;
position: center;
}
listview {
columns: 4;
lines: 1;
spacing: 12px;
cycle: true;
dynamic: true;
layout: vertical;
}
mainbox {
background-color: @background;
children: [ inputbar, listview ];
spacing: 12px;
margin: 12px;
}
element {
background-color: @background-light;
text-color: @foreground;
orientation: vertical;
border-radius: 0px;
}
element-text {
font: "feather 20";
expand: true;
horizontal-align: 0.5;
vertical-align: 0;
margin: 5px 10px 30px 10px;
}
element normal.urgent,
element alternate.urgent {
background-color: @off;
text-color: @background;
border-radius: 0px;
}
element normal.active,
element alternate.active {
background-color: @on;
text-color: @background;
}
element selected {
background-color: @accent;
text-color: @background;
border: 0px;
border-radius: 0px;
border-color: @border;
}
element selected.urgent {
background-color: @on;
text-color: @background;
}
element selected.active {
background-color: @off;
color: @background;
}

View File

@ -0,0 +1,126 @@
/*
*
* Author : Aditya Shakya
* Mail : adi1090x@gmail.com
* Github : @adi1090x
* Twitter : @adi1090x
*
*/
configuration {
font: "Fira Code Nerd Font 10";
disable-history: false;
fullscreen: false;
hide-scrollbar: true;
sidebar-mode: false;
}
@import "../../../styles/colors.rasi"
* {
background-color: @background;
text-color: @foreground;
}
window {
transparency: "real";
border-radius: 0px;
location: southeast;
width: 420px;
x-offset: -15px;
y-offset: -45px;
}
prompt {
enabled: true;
padding: 10px;
background-color: @background-light;
text-color: @accent;
border: 2px 2px 2px 2px;
border-radius: 0px;
border-color: @accent;
}
textbox-prompt-colon {
expand: false;
str: " System ";
background-color: @accent;
text-color: @background;
padding: 12px 10px 0px 10px;
}
inputbar {
children: [ textbox-prompt-colon, prompt ];
spacing: 0px;
background-color: @background;
text-color: @foreground;
expand: false;
border: 0px;
border-radius: 0px;
border-color: @accent;
margin: 0px 0px 0px 0px;
padding: 0px;
position: center;
}
listview {
columns: 5;
lines: 1;
spacing: 12px;
cycle: true;
dynamic: true;
layout: vertical;
}
mainbox {
background-color: @background;
children: [ inputbar, listview ];
spacing: 12px;
margin: 12px;
}
element {
background-color: @background-light;
text-color: @foreground;
orientation: vertical;
border-radius: 0px;
}
element-text {
font: "feather 20";
expand: true;
horizontal-align: 0.5;
vertical-align: 0;
margin: 5px 10px 30px 10px;
}
element normal.urgent,
element alternate.urgent {
background-color: @off;
text-color: @background;
border-radius: 0px;
}
element normal.active,
element alternate.active {
background-color: @on;
text-color: @background;
}
element selected {
background-color: @accent;
text-color: @background;
border: 0px;
border-radius: 0px;
border-color: @border;
}
element selected.urgent {
background-color: @on;
text-color: @background;
}
element selected.active {
background-color: @off;
color: @background;
}

View File

@ -0,0 +1,126 @@
/*
*
* Author : Aditya Shakya
* Mail : adi1090x@gmail.com
* Github : @adi1090x
* Twitter : @adi1090x
*
*/
configuration {
font: "Fira Code Nerd Font 10";
disable-history: false;
fullscreen: false;
hide-scrollbar: true;
sidebar-mode: false;
}
@import "../../../styles/colors.rasi"
* {
background-color: @background;
text-color: @foreground;
}
window {
transparency: "real";
border-radius: 0px;
location: southeast;
width: 500px;
x-offset: -15px;
y-offset: -45px;
}
prompt {
enabled: true;
padding: 10px;
background-color: @background-light;
text-color: @accent;
border: 2px 2px 2px 2px;
border-radius: 0px;
border-color: @accent;
}
textbox-prompt-colon {
expand: false;
str: " Quick Links ";
background-color: @accent;
text-color: @background;
padding: 12px 10px 0px 10px;
}
inputbar {
children: [ textbox-prompt-colon, prompt ];
spacing: 0px;
background-color: @background;
text-color: @foreground;
expand: false;
border: 0px;
border-radius: 0px;
border-color: @accent;
margin: 0px 0px 0px 0px;
padding: 0px;
position: center;
}
listview {
columns: 6;
lines: 1;
spacing: 12px;
cycle: true;
dynamic: true;
layout: vertical;
}
mainbox {
background-color: @background;
children: [ inputbar, listview ];
spacing: 12px;
margin: 12px;
}
element {
background-color: @background-light;
text-color: @foreground;
orientation: vertical;
border-radius: 0px;
}
element-text {
font: "feather 20";
expand: true;
horizontal-align: 0.5;
vertical-align: 0;
margin: 5px 10px 30px 10px;
}
element normal.urgent,
element alternate.urgent {
background-color: @off;
text-color: @background;
border-radius: 0px;
}
element normal.active,
element alternate.active {
background-color: @on;
text-color: @background;
}
element selected {
background-color: @accent;
text-color: @background;
border: 0px;
border-radius: 0px;
border-color: @border;
}
element selected.urgent {
background-color: @on;
text-color: @background;
}
element selected.active {
background-color: @off;
color: @background;
}

View File

@ -0,0 +1,126 @@
/*
*
* Author : Aditya Shakya
* Mail : adi1090x@gmail.com
* Github : @adi1090x
* Twitter : @adi1090x
*
*/
configuration {
font: "Fira Code Nerd Font 10";
disable-history: false;
fullscreen: false;
hide-scrollbar: true;
sidebar-mode: false;
}
@import "../../../styles/colors.rasi"
* {
background-color: @background;
text-color: @foreground;
}
window {
transparency: "real";
border-radius: 0px;
location: southeast;
width: 250px;
x-offset: -15px;
y-offset: -45px;
}
prompt {
enabled: true;
padding: 10px;
background-color: @background-light;
text-color: @accent;
border: 2px 2px 2px 2px;
border-radius: 0px;
border-color: @accent;
}
textbox-prompt-colon {
expand: false;
str: " Screenshot ";
background-color: @accent;
text-color: @background;
padding: 12px 10px 0px 10px;
}
inputbar {
children: [ textbox-prompt-colon, prompt ];
spacing: 0px;
background-color: @background;
text-color: @foreground;
expand: false;
border: 0px;
border-radius: 0px;
border-color: @accent;
margin: 0px 0px 0px 0px;
padding: 0px;
position: center;
}
listview {
columns: 3;
lines: 1;
spacing: 12px;
cycle: true;
dynamic: true;
layout: vertical;
}
mainbox {
background-color: @background;
children: [ inputbar, listview ];
spacing: 12px;
margin: 12px;
}
element {
background-color: @background-light;
text-color: @foreground;
orientation: vertical;
border-radius: 0px;
}
element-text {
font: "feather 20";
expand: true;
horizontal-align: 0.5;
vertical-align: 0;
margin: 5px 10px 30px 10px;
}
element normal.urgent,
element alternate.urgent {
background-color: @off;
text-color: @background;
border-radius: 0px;
}
element normal.active,
element alternate.active {
background-color: @on;
text-color: @background;
}
element selected {
background-color: @accent;
text-color: @background;
border: 0px;
border-radius: 0px;
border-color: @border;
}
element selected.urgent {
background-color: @on;
text-color: @background;
}
element selected.active {
background-color: @off;
color: @background;
}

View File

@ -0,0 +1,126 @@
/*
*
* Author : Aditya Shakya
* Mail : adi1090x@gmail.com
* Github : @adi1090x
* Twitter : @adi1090x
*
*/
configuration {
font: "Fira Code Nerd Font 10";
disable-history: false;
fullscreen: false;
hide-scrollbar: true;
sidebar-mode: false;
}
@import "../../../styles/colors.rasi"
* {
background-color: @background;
text-color: @foreground;
}
window {
transparency: "real";
border-radius: 0px;
location: southeast;
width: 450px;
x-offset: -15px;
y-offset: -45px;
}
prompt {
enabled: true;
padding: 10px;
background-color: @background-light;
text-color: @accent;
border: 2px 2px 2px 2px;
border-radius: 0px;
border-color: @accent;
}
textbox-prompt-colon {
expand: false;
str: " Time ";
background-color: @accent;
text-color: @background;
padding: 12px 10px 0px 10px;
}
inputbar {
children: [ textbox-prompt-colon, prompt ];
spacing: 0px;
background-color: @background;
text-color: @foreground;
expand: false;
border: 0px;
border-radius: 0px;
border-color: @accent;
margin: 0px 0px 0px 0px;
padding: 0px;
position: center;
}
listview {
columns: 3;
lines: 1;
spacing: 12px;
cycle: true;
dynamic: true;
layout: vertical;
}
mainbox {
background-color: @background;
children: [ inputbar, listview ];
spacing: 12px;
margin: 12px;
}
element {
background-color: @background-light;
text-color: @foreground;
orientation: vertical;
border-radius: 0px;
}
element-text {
font: "Hurmit Nerd Font Mono 32";
expand: true;
horizontal-align: 0.5;
vertical-align: 0;
margin: 5px 10px 50px 10px;
}
element normal.urgent,
element alternate.urgent {
background-color: @off;
text-color: @background;
border-radius: 0px;
}
element normal.active,
element alternate.active {
background-color: @on;
text-color: @background;
}
element selected {
background-color: @accent;
text-color: @background;
border: 0px;
border-radius: 0px;
border-color: @border;
}
element selected.urgent {
background-color: @on;
text-color: @background;
}
element selected.active {
background-color: @off;
color: @background;
}

View File

@ -0,0 +1,126 @@
/*
*
* Author : Aditya Shakya
* Mail : adi1090x@gmail.com
* Github : @adi1090x
* Twitter : @adi1090x
*
*/
configuration {
font: "Fira Code Nerd Font 10";
disable-history: false;
fullscreen: false;
hide-scrollbar: true;
sidebar-mode: false;
}
@import "../../../styles/colors.rasi"
* {
background-color: @background;
text-color: @foreground;
}
window {
transparency: "real";
border-radius: 0px;
location: southeast;
width: 250px;
x-offset: -15px;
y-offset: -45px;
}
prompt {
enabled: true;
padding: 10px;
background-color: @background-light;
text-color: @accent;
border: 2px 2px 2px 2px;
border-radius: 0px;
border-color: @accent;
}
textbox-prompt-colon {
expand: false;
str: " Volume ";
background-color: @accent;
text-color: @background;
padding: 12px 10px 0px 10px;
}
inputbar {
children: [ textbox-prompt-colon, prompt ];
spacing: 0px;
background-color: @background;
text-color: @foreground;
expand: false;
border: 0px;
border-radius: 0px;
border-color: @accent;
margin: 0px 0px 0px 0px;
padding: 0px;
position: center;
}
listview {
columns: 3;
lines: 1;
spacing: 12px;
cycle: true;
dynamic: true;
layout: vertical;
}
mainbox {
background-color: @background;
children: [ inputbar, listview ];
spacing: 12px;
margin: 12px;
}
element {
background-color: @background-light;
text-color: @foreground;
orientation: vertical;
border-radius: 0px;
}
element-text {
font: "feather 20";
expand: true;
horizontal-align: 0.5;
vertical-align: 0;
margin: 5px 10px 30px 10px;
}
element normal.urgent,
element alternate.urgent {
background-color: @off;
text-color: @background;
border-radius: 0px;
}
element normal.active,
element alternate.active {
background-color: @on;
text-color: @background;
}
element selected {
background-color: @accent;
text-color: @background;
border: 0px;
border-radius: 0px;
border-color: @border;
}
element selected.urgent {
background-color: @on;
text-color: @background;
}
element selected.active {
background-color: @off;
color: @background;
}

View File

@ -0,0 +1,78 @@
#!/usr/bin/env bash
## Author : Aditya Shakya
## Mail : adi1090x@gmail.com
## Github : @adi1090x
## Twitter : @adi1090x
style="$($HOME/.config/rofi/applets/applets/style.sh)"
dir="$HOME/.config/rofi/applets/applets/configs/$style"
rofi_command="rofi -theme $dir/mpd.rasi"
# Gets the current status of mpd (for us to parse it later on)
status="$(mpc status)"
# Defines the Play / Pause option content
if [[ $status == *"[playing]"* ]]; then
play_pause=""
else
play_pause=""
fi
active=""
urgent=""
# Display if repeat mode is on / off
tog_repeat=""
if [[ $status == *"repeat: on"* ]]; then
active="-a 4"
elif [[ $status == *"repeat: off"* ]]; then
urgent="-u 4"
else
tog_repeat=" Parsing error"
fi
# Display if random mode is on / off
tog_random=""
if [[ $status == *"random: on"* ]]; then
[ -n "$active" ] && active+=",5" || active="-a 5"
elif [[ $status == *"random: off"* ]]; then
[ -n "$urgent" ] && urgent+=",5" || urgent="-u 5"
else
tog_random=" Parsing error"
fi
stop=""
next=""
previous=""
# Variable passed to rofi
options="$previous\n$play_pause\n$stop\n$next\n$tog_repeat\n$tog_random"
# Get the current playing song
current=$(mpc -f "%title%" current)
# If mpd isn't running it will return an empty string, we don't want to display that
if [[ -z "$current" ]]; then
current="-"
fi
# Spawn the mpd menu with the "Play / Pause" entry selected by default
chosen="$(echo -e "$options" | $rofi_command -p "$current" -dmenu $active $urgent -selected-row 1)"
case $chosen in
$previous)
mpc -q prev && notify-send -u low -t 1800 "$(mpc current)"
;;
$play_pause)
mpc -q toggle && notify-send -u low -t 1800 "$(mpc current)"
;;
$stop)
mpc -q stop
;;
$next)
mpc -q next && notify-send -u low -t 1800 "$(mpc current)"
;;
$tog_repeat)
mpc -q repeat
;;
$tog_random)
mpc -q random
;;
esac

View File

@ -0,0 +1,68 @@
#!/usr/bin/env bash
## Author : Aditya Shakya
## Mail : adi1090x@gmail.com
## Github : @adi1090x
## Twitter : @adi1090x
style="$($HOME/.config/rofi/applets/applets/style.sh)"
dir="$HOME/.config/rofi/applets/applets/configs/$style"
rofi_command="rofi -theme $dir/network.rasi"
## Get info
IFACE="$(nmcli | grep -i interface | awk '/interface/ {print $2}')"
#SSID="$(iwgetid -r)"
#LIP="$(nmcli | grep -i server | awk '/server/ {print $2}')"
#PIP="$(dig +short myip.opendns.com @resolver1.opendns.com )"
STATUS="$(nmcli radio wifi)"
active=""
urgent=""
if (ping -c 1 archlinux.org || ping -c 1 google.com || ping -c 1 bitbucket.org || ping -c 1 github.com || ping -c 1 sourceforge.net) &>/dev/null; then
if [[ $STATUS == *"enable"* ]]; then
if [[ $IFACE == e* ]]; then
connected=""
else
connected=""
fi
active="-a 0"
SSID="$(iwgetid -r)"
PIP="$(wget --timeout=30 http://ipinfo.io/ip -qO -)"
fi
else
urgent="-u 0"
SSID="Disconnected"
PIP="Not Available"
connected=""
fi
## Icons
bmon=""
launch_cli=""
launch=""
options="$connected\n$bmon\n$launch_cli\n$launch"
## Main
chosen="$(echo -e "$options" | $rofi_command -p "$SSID" -dmenu $active $urgent -selected-row 1)"
case $chosen in
$connected)
if [[ $STATUS == *"enable"* ]]; then
nmcli radio wifi off
else
nmcli radio wifi on
fi
;;
$bmon)
termite -e bmon
;;
$launch_cli)
termite -e nmtui
;;
$launch)
nm-connection-editor
;;
esac

View File

@ -0,0 +1,100 @@
#!/usr/bin/env bash
## Author : Aditya Shakya
## Mail : adi1090x@gmail.com
## Github : @adi1090x
## Twitter : @adi1090x
style="$($HOME/.config/rofi/applets/applets/style.sh)"
dir="$HOME/.config/rofi/applets/applets/configs/$style"
rofi_command="rofi -theme $dir/powermenu.rasi"
uptime=$(uptime -p | sed -e 's/up //g')
cpu=$(sh ~/.config/rofi/bin/usedcpu)
memory=$(sh ~/.config/rofi/bin/usedram)
# Options
shutdown=""
reboot=""
lock=""
suspend=""
logout=""
# Confirmation
confirm_exit() {
rofi -dmenu\
-i\
-no-fixed-num-lines\
-p "Are You Sure? : "\
-theme $HOME/.config/rofi/applets/styles/confirm.rasi
}
# Message
msg() {
rofi -theme "$HOME/.config/rofi/applets/styles/message.rasi" -e "Available Options - yes / y / no / n"
}
# Variable passed to rofi
options="$shutdown\n$reboot\n$lock\n$suspend\n$logout"
chosen="$(echo -e "$options" | $rofi_command -p "UP - $uptime" -dmenu -selected-row 2)"
case $chosen in
$shutdown)
ans=$(confirm_exit &)
if [[ $ans == "yes" || $ans == "YES" || $ans == "y" || $ans == "Y" ]]; then
# systemctl poweroff
sudo shutdown now
elif [[ $ans == "no" || $ans == "NO" || $ans == "n" || $ans == "N" ]]; then
exit 0
else
msg
fi
;;
$reboot)
ans=$(confirm_exit &)
if [[ $ans == "yes" || $ans == "YES" || $ans == "y" || $ans == "Y" ]]; then
# systemctl reboot
sudo reboot now
elif [[ $ans == "no" || $ans == "NO" || $ans == "n" || $ans == "N" ]]; then
exit 0
else
msg
fi
;;
$lock)
# if [[ -f /usr/bin/i3lock ]]; then
# i3lock
if [[ -f /usr/bin/betterlockscreen ]]; then
betterlockscreen -l
fi
;;
$suspend)
ans=$(confirm_exit &)
if [[ $ans == "yes" || $ans == "YES" || $ans == "y" || $ans == "Y" ]]; then
mpc -q pause
amixer set Master mute
systemctl suspend
elif [[ $ans == "no" || $ans == "NO" || $ans == "n" || $ans == "N" ]]; then
exit 0
else
msg
fi
;;
$logout)
ans=$(confirm_exit &)
if [[ $ans == "yes" || $ans == "YES" || $ans == "y" || $ans == "Y" ]]; then
if [[ "$DESKTOP_SESSION" == "Openbox" ]]; then
openbox --exit
elif [[ "$DESKTOP_SESSION" == "bspwm" ]]; then
bspc quit
elif [[ "$DESKTOP_SESSION" == "i3" ]]; then
i3-msg exit
fi
elif [[ $ans == "no" || $ans == "NO" || $ans == "n" || $ans == "N" ]]; then
exit 0
else
msg
fi
;;
esac

View File

@ -0,0 +1,64 @@
#!/usr/bin/env bash
## Author : Aditya Shakya
## Mail : adi1090x@gmail.com
## Github : @adi1090x
## Twitter : @adi1090x
style="$($HOME/.config/rofi/applets/applets/style.sh)"
dir="$HOME/.config/rofi/applets/applets/configs/$style"
rofi_command="rofi -theme $dir/quicklinks.rasi"
# Error msg
msg() {
rofi -theme "$HOME/.config/rofi/applets/styles/message.rasi" -e "$1"
}
# Browser
if [[ -f /usr/bin/firefox-developer-edition ]]; then
app="firefox-developer-edition"
elif [[ -f /usr/bin/firefox ]]; then
app="firefox"
elif [[ -f /usr/bin/chromium ]]; then
app="chromium"
elif [[ -f /usr/bin/midori ]]; then
app="midori"
else
msg "No suitable web browser found!"
exit 1
fi
# Links
google=""
facebook=""
twitter=""
github=""
mail=""
youtube=""
# Variable passed to rofi
options="$google\n$facebook\n$twitter\n$github\n$mail\n$youtube"
chosen="$(echo -e "$options" | $rofi_command -p "Open In : $app" -dmenu -selected-row 0)"
case $chosen in
$google)
$app https://www.google.com &
;;
$facebook)
$app https://www.facebook.com &
;;
$twitter)
$app https://www.twitter.com &
;;
$github)
$app https://www.github.com &
;;
$mail)
$app https://www.gmail.com &
;;
$youtube)
$app https://www.youtube.com &
;;
esac

View File

@ -0,0 +1,51 @@
#!/usr/bin/env bash
## Author : Aditya Shakya
## Mail : adi1090x@gmail.com
## Github : @adi1090x
## Twitter : @adi1090x
style="$($HOME/.config/rofi/applets/applets/style.sh)"
dir="$HOME/.config/rofi/applets/applets/configs/$style"
rofi_command="rofi -theme $dir/screenshot.rasi"
# Error msg
msg() {
rofi -theme "$HOME/.config/rofi/applets/styles/message.rasi" -e "Please install 'scrot' first."
}
# Options
screen=""
area=""
window=""
# Variable passed to rofi
options="$screen\n$area\n$window"
chosen="$(echo -e "$options" | $rofi_command -p 'scrot' -dmenu -selected-row 1)"
case $chosen in
$screen)
if [[ -f /usr/bin/scrot ]]; then
sleep 1; scrot 'Screenshot_%Y-%m-%d-%S_$wx$h.png' -e 'mv $f $$(xdg-user-dir PICTURES) ; viewnior $$(xdg-user-dir PICTURES)/$f'
else
msg
fi
;;
$area)
if [[ -f /usr/bin/scrot ]]; then
scrot -s 'Screenshot_%Y-%m-%d-%S_$wx$h.png' -e 'mv $f $$(xdg-user-dir PICTURES)/screenshots ; viewnior $$(xdg-user-dir PICTURES)/screenshots/$f'
# scrot -s -f -o "/tmp/image.png" && xclip -selection clipboard -t image/png -i /tmp/image.png && dunstify -h string:x-dunst-stack-tag:scrot Screenshot saved to clipboardi -A 'scrot,default'
else
msg
fi
;;
$window)
if [[ -f /usr/bin/scrot ]]; then
sleep 1; scrot -u 'Screenshot_%Y-%m-%d-%S_$wx$h.png' -e 'mv $f $$(xdg-user-dir PICTURES) ; viewnior $$(xdg-user-dir PICTURES)/$f'
else
msg
fi
;;
esac

View File

@ -0,0 +1,15 @@
#!/usr/bin/env bash
# Available Styles
# >> Created and tested on : rofi 1.6.0-1
#
# square circle rounded
style="square"
# uncomment these lines to enable random style
#styles=()
#style="${styles[$(( $RANDOM % 3 ))]}"
# print style name
echo "$style"

View File

@ -0,0 +1,24 @@
#!/usr/bin/env bash
## Author : Aditya Shakya
## Mail : adi1090x@gmail.com
## Github : @adi1090x
## Twitter : @adi1090x
style="$($HOME/.config/rofi/applets/applets/style.sh)"
dir="$HOME/.config/rofi/applets/applets/configs/$style"
rofi_command="rofi -theme $dir/time.rasi"
## Get time and date
TIME="$(date +"%I:%M %p")"
DN=$(date +"%A")
MN=$(date +"%B")
DAY="$(date +"%d")"
MONTH="$(date +"%m")"
YEAR="$(date +"%Y")"
options="$DAY\n$MONTH\n$YEAR"
## Main
chosen="$(echo -e "$options" | $rofi_command -p "$DN, $TIME" -dmenu -selected-row 1)"

View File

@ -0,0 +1,58 @@
#!/usr/bin/env bash
## Author : Aditya Shakya
## Mail : adi1090x@gmail.com
## Github : @adi1090x
## Twitter : @adi1090x
style="$($HOME/.config/rofi/applets/applets/style.sh)"
dir="$HOME/.config/rofi/applets/applets/configs/$style"
rofi_command="rofi -theme $dir/volume.rasi"
## Get Volume
VOLUME=$(amixer get Master | tail -n 1 | awk -F ' ' '{print $5}' | tr -d '[]%')
MUTE=$(amixer get Master | tail -n 1 | awk -F ' ' '{print $6}' | tr -d '[]%')
active=""
urgent=""
if [[ $MUTE == *"off"* ]]; then
active="-a 1"
else
urgent="-u 1"
fi
if [[ $MUTE == *"off"* ]]; then
active="-a 1"
else
urgent="-u 1"
fi
if [[ $MUTE == *"on"* ]]; then
VOLUME="$(amixer get Master | tail -n 1 | awk -F ' ' '{print $5}' | tr -d '[]%')%"
else
VOLUME="Mute"
fi
## Icons
ICON_UP=""
ICON_DOWN=""
ICON_MUTED=""
options="$ICON_UP\n$ICON_MUTED\n$ICON_DOWN"
## Main
chosen="$(echo -e "$options" | $rofi_command -p "$VOLUME" -dmenu $active $urgent -selected-row 0)"
case $chosen in
$ICON_UP)
amixer -Mq set Master,0 5%+ unmute && notify-send -u low -t 1500 "$ICON_UP Volume Up"
;;
$ICON_DOWN)
amixer -Mq set Master,0 5%- unmute && notify-send -u low -t 1500 "$ICON_DOWN Volume Down"
;;
$ICON_MUTED)
amixer -q set Master toggle && notify-send -u low -t 2500 "$ICON_MUTED Volume Muted"
;;
esac

103
.config/rofi/applets/menu/apps.sh Executable file
View File

@ -0,0 +1,103 @@
#!/usr/bin/env bash
## Author : Aditya Shakya
## Mail : adi1090x@gmail.com
## Github : @adi1090x
## Twitter : @adi1090x
style="$($HOME/.config/rofi/applets/menu/style.sh)"
dir="$HOME/.config/rofi/applets/menu/configs/$style"
rofi_command="rofi -theme $dir/apps.rasi"
# Links
terminal=""
files=""
editor=""
browser=""
music=""
settings=""
# Error msg
msg() {
rofi -theme "$HOME/.config/rofi/applets/styles/message.rasi" -e "$1"
}
# Variable passed to rofi
options="$terminal\n$files\n$editor\n$browser\n$music\n$settings"
chosen="$(echo -e "$options" | $rofi_command -p "Most Used" -dmenu -selected-row 0)"
case $chosen in
$terminal)
if [[ -f /usr/bin/alacritty ]]; then
alacritty &
elif [[ -f /usr/bin/termite ]]; then
termite &
elif [[ -f /usr/bin/urxvt ]]; then
urxvt &
elif [[ -f /usr/bin/kitty ]]; then
kitty &
elif [[ -f /usr/bin/xterm ]]; then
xterm &
elif [[ -f /usr/bin/xfce4-terminal ]]; then
xfce4-terminal &
elif [[ -f /usr/bin/gnome-terminal ]]; then
gnome-terminal &
else
msg "No suitable terminal found!"
fi
;;
$files)
if [[ -f /usr/bin/spacefm ]]; then
spacefm &
elif [[ -f /usr/bin/thunar ]]; then
thunar &
elif [[ -f /usr/bin/pcmanfm ]]; then
pcmanfm &
else
msg "No suitable file manager found!"
fi
;;
$editor)
if [[ -f /usr/bin/geany ]]; then
geany &
elif [[ -f /usr/bin/leafpad ]]; then
leafpad &
elif [[ -f /usr/bin/mousepad ]]; then
mousepad &
elif [[ -f /usr/bin/code ]]; then
code &
else
msg "No suitable text editor found!"
fi
;;
$browser)
if [[ -f /usr/bin/firefox-developer-edition ]]; then
firefox-developer-edition &
elif [[ -f /usr/bin/chromium ]]; then
chromium &
elif [[ -f /usr/bin/midori ]]; then
midori &
else
msg "No suitable web browser found!"
fi
;;
$music)
if [[ -f /usr/bin/spotify ]]; then
spotify &
elif [[ -f /usr/bin/lxmusic ]]; then
lxmusic &
else
msg "No suitable music player found!"
fi
;;
$settings)
if [[ -f /usr/bin/lxappearance ]]; then
lxappearance &
elif [[ -f /usr/bin/xfce4-settings-manager ]]; then
xfce4-settings-manager &
else
msg "No suitable settings manager found!"
fi
;;
esac

View File

@ -0,0 +1,75 @@
#!/usr/bin/env bash
## Author : Aditya Shakya
## Mail : adi1090x@gmail.com
## Github : @adi1090x
## Twitter : @adi1090x
style="$($HOME/.config/rofi/applets/menu/style.sh)"
dir="$HOME/.config/rofi/applets/menu/configs/$style"
rofi_command="rofi -theme $dir/backlight.rasi"
# Error msg
msg() {
rofi -theme "$HOME/.config/rofi/applets/styles/message.rasi" -e "$1"
}
## Get Brightness
if [[ -f /usr/bin/blight ]]; then
DEVICE=$(ls /sys/class/backlight | head -n 1)
BNESS="$(blight -d $DEVICE get brightness)"
PERC="$(($BNESS*100/255))"
BLIGHT=${PERC%.*}
elif [[ -f /usr/bin/xbacklight ]]; then
VAR="$(xbacklight -get)"
BLIGHT="$(printf "%.0f\n" "$VAR")"
else
msg "No suitable backlight utility found!"
exit 1
fi
if [[ $BLIGHT -ge 1 ]] && [[ $BLIGHT -le 29 ]]; then
MSG="Low"
elif [[ $BLIGHT -ge 30 ]] && [[ $BLIGHT -le 49 ]]; then
MSG="Optimal"
elif [[ $BLIGHT -ge 50 ]] && [[ $BLIGHT -le 69 ]]; then
MSG="High"
elif [[ $BLIGHT -ge 70 ]] && [[ $BLIGHT -le 99 ]]; then
MSG="Too Much"
fi
## Icons
ICON_UP=""
ICON_DOWN=""
ICON_OPT=""
notify="notify-send -u low -t 1500"
options="$ICON_UP\n$ICON_OPT\n$ICON_DOWN"
## Main
chosen="$(echo -e "$options" | $rofi_command -p "$BLIGHT% : $MSG" -dmenu -selected-row 1)"
case $chosen in
$ICON_UP)
if [[ -f /usr/bin/blight ]]; then
blight -d $DEVICE set +10% && $notify "Brightness Up $ICON_UP"
elif [[ -f /usr/bin/xbacklight ]]; then
xbacklight -inc 10 && $notify "Brightness Up $ICON_UP"
fi
;;
$ICON_DOWN)
if [[ -f /usr/bin/blight ]]; then
blight -d $DEVICE set -10% && $notify "Brightness Down $ICON_DOWN"
elif [[ -f /usr/bin/xbacklight ]]; then
xbacklight -dec 10 && $notify "Brightness Down $ICON_DOWN"
fi
;;
$ICON_OPT)
if [[ -f /usr/bin/blight ]]; then
blight -d $DEVICE set 25% && $notify "Optimal Brightness $ICON_OPT"
elif [[ -f /usr/bin/xbacklight ]]; then
xbacklight -set 30 && $notify "Optimal Brightness $ICON_OPT"
fi
;;
esac

View File

@ -0,0 +1,65 @@
#!/usr/bin/env bash
## Author : Aditya Shakya
## Mail : adi1090x@gmail.com
## Github : @adi1090x
## Twitter : @adi1090x
style="$($HOME/.config/rofi/applets/menu/style.sh)"
dir="$HOME/.config/rofi/applets/menu/configs/$style"
rofi_command="rofi -theme $dir/battery.rasi"
## Get data
BATTERY="$(acpi | awk -F ' ' '{print $4}' | tr -d \%,)"
CHARGE="$(acpi | awk -F ' ' '{print $3}' | tr -d \,)"
active=""
urgent=""
if [[ $CHARGE = *"Charging"* ]]; then
active="-a 1"
ICON_CHRG=""
MSG=$CHARGE
elif [[ $CHARGE = *"Full"* ]]; then
active="-u 1"
ICON_CHRG=""
MSG=$CHARGE
else
urgent="-u 1"
ICON_CHRG=""
MSG=$CHARGE
fi
# Discharging
#if [[ $CHARGE -eq 1 ]] && [[ $BATTERY -eq 100 ]]; then
# ICON_DISCHRG=""
if [[ $BATTERY -ge 5 ]] && [[ $BATTERY -le 19 ]]; then
ICON_DISCHRG=""
elif [[ $BATTERY -ge 20 ]] && [[ $BATTERY -le 39 ]]; then
ICON_DISCHRG=""
elif [[ $BATTERY -ge 40 ]] && [[ $BATTERY -le 59 ]]; then
ICON_DISCHRG=""
elif [[ $BATTERY -ge 60 ]] && [[ $BATTERY -le 79 ]]; then
ICON_DISCHRG=""
elif [[ $BATTERY -ge 80 ]] && [[ $BATTERY -le 100 ]]; then
ICON_DISCHRG=""
fi
## Icons
ICON_PMGR=""
options="$ICON_DISCHRG\n$ICON_CHRG\n$ICON_PMGR"
## Main
chosen="$(echo -e "$options" | $rofi_command -p "$MSG : $BATTERY%" -dmenu $active $urgent -selected-row 0)"
case $chosen in
$ICON_CHRG)
;;
$ICON_DISCHRG)
;;
$ICON_PMGR)
xfce4-power-manager-settings
;;
esac

View File

@ -0,0 +1,127 @@
/*
*
* Author : Aditya Shakya
* Mail : adi1090x@gmail.com
* Github : @adi1090x
* Twitter : @adi1090x
*
*/
configuration {
font: "Fira Code Nerd Font 10";
disable-history: false;
fullscreen: false;
hide-scrollbar: true;
sidebar-mode: false;
}
@import "../../../styles/colors.rasi"
* {
background-color: @background;
text-color: @foreground;
}
window {
transparency: "real";
border-radius: 20px;
location: center;
width: 950px;
x-offset: 0px;
y-offset: 0px;
}
prompt {
enabled: true;
padding: 10px;
background-color: @background;
text-color: @accent;
border: 0px 2px 0px 2px;
border-radius: 100%;
border-color: @accent;
}
textbox-prompt-colon {
expand: false;
str: " Apps ";
background-color: @accent;
text-color: @background;
padding: 10px 10px 0px 10px;
border-radius: 100%;
}
inputbar {
children: [ textbox-prompt-colon, prompt ];
spacing: 15px;
background-color: @background;
text-color: @foreground;
expand: false;
border: 0px;
border-radius: 0px;
border-color: @accent;
margin: 0px 0px 0px 0px;
padding: 0px;
position: center;
}
listview {
columns: 6;
lines: 1;
spacing: 15px;
cycle: true;
dynamic: true;
layout: vertical;
}
mainbox {
background-color: @background;
children: [ inputbar, listview ];
spacing: 15px;
margin: 40px;
}
element {
background-color: @background-light;
text-color: @foreground;
orientation: vertical;
border-radius: 100%;
}
element-text {
font: "feather 32";
expand: true;
horizontal-align: 0.5;
vertical-align: 0;
margin: 25px 0px 65px 0px;
}
element normal.urgent,
element alternate.urgent {
background-color: @off;
text-color: @background;
border-radius: 0px;
}
element normal.active,
element alternate.active {
background-color: @on;
text-color: @background;
}
element selected {
background-color: @accent;
text-color: @background;
border: 0px;
border-radius: 100%;
border-color: @border;
}
element selected.urgent {
background-color: @on;
text-color: @background;
}
element selected.active {
background-color: @off;
color: @background;
}

View File

@ -0,0 +1,127 @@
/*
*
* Author : Aditya Shakya
* Mail : adi1090x@gmail.com
* Github : @adi1090x
* Twitter : @adi1090x
*
*/
configuration {
font: "Fira Code Nerd Font 10";
disable-history: false;
fullscreen: false;
hide-scrollbar: true;
sidebar-mode: false;
}
@import "../../../styles/colors.rasi"
* {
background-color: @background;
text-color: @foreground;
}
window {
transparency: "real";
border-radius: 20px;
location: center;
width: 500px;
x-offset: 0px;
y-offset: 0px;
}
prompt {
enabled: true;
padding: 10px;
background-color: @background;
text-color: @accent;
border: 0px 2px 0px 2px;
border-radius: 100%;
border-color: @accent;
}
textbox-prompt-colon {
expand: false;
str: " Brightness ";
background-color: @accent;
text-color: @background;
padding: 10px 10px 0px 10px;
border-radius: 100%;
}
inputbar {
children: [ textbox-prompt-colon, prompt ];
spacing: 15px;
background-color: @background;
text-color: @foreground;
expand: false;
border: 0px;
border-radius: 0px;
border-color: @accent;
margin: 0px 0px 0px 0px;
padding: 0px;
position: center;
}
listview {
columns: 3;
lines: 1;
spacing: 15px;
cycle: true;
dynamic: true;
layout: vertical;
}
mainbox {
background-color: @background;
children: [ inputbar, listview ];
spacing: 15px;
margin: 40px;
}
element {
background-color: @background-light;
text-color: @foreground;
orientation: vertical;
border-radius: 100%;
}
element-text {
font: "feather 32";
expand: true;
horizontal-align: 0.5;
vertical-align: 0;
margin: 25px 0px 65px 0px;
}
element normal.urgent,
element alternate.urgent {
background-color: @off;
text-color: @background;
border-radius: 0px;
}
element normal.active,
element alternate.active {
background-color: @on;
text-color: @background;
}
element selected {
background-color: @accent;
text-color: @background;
border: 0px;
border-radius: 100%;
border-color: @border;
}
element selected.urgent {
background-color: @on;
text-color: @background;
}
element selected.active {
background-color: @off;
color: @background;
}

View File

@ -0,0 +1,127 @@
/*
*
* Author : Aditya Shakya
* Mail : adi1090x@gmail.com
* Github : @adi1090x
* Twitter : @adi1090x
*
*/
configuration {
font: "Fira Code Nerd Font 10";
disable-history: false;
fullscreen: false;
hide-scrollbar: true;
sidebar-mode: false;
}
@import "../../../styles/colors.rasi"
* {
background-color: @background;
text-color: @foreground;
}
window {
transparency: "real";
border-radius: 20px;
location: center;
width: 500px;
x-offset: 0px;
y-offset: 0px;
}
prompt {
enabled: true;
padding: 10px;
background-color: @background;
text-color: @accent;
border: 0px 2px 0px 2px;
border-radius: 100%;
border-color: @accent;
}
textbox-prompt-colon {
expand: false;
str: " Battery ";
background-color: @accent;
text-color: @background;
padding: 10px 10px 0px 10px;
border-radius: 100%;
}
inputbar {
children: [ textbox-prompt-colon, prompt ];
spacing: 15px;
background-color: @background;
text-color: @foreground;
expand: false;
border: 0px;
border-radius: 0px;
border-color: @accent;
margin: 0px 0px 0px 0px;
padding: 0px;
position: center;
}
listview {
columns: 3;
lines: 1;
spacing: 15px;
cycle: true;
dynamic: true;
layout: vertical;
}
mainbox {
background-color: @background;
children: [ inputbar, listview ];
spacing: 15px;
margin: 40px;
}
element {
background-color: @background-light;
text-color: @foreground;
orientation: vertical;
border-radius: 100%;
}
element-text {
font: "Iosevka Nerd Font 32";
expand: true;
horizontal-align: 0.5;
vertical-align: 0;
margin: 25px 0px 65px 0px;
}
element normal.urgent,
element alternate.urgent {
background-color: @off;
text-color: @background;
border-radius: 100%;
}
element normal.active,
element alternate.active {
background-color: @on;
text-color: @background;
}
element selected {
background-color: @accent;
text-color: @background;
border: 0px;
border-radius: 100%;
border-color: @border;
}
element selected.urgent {
background-color: @on;
text-color: @background;
}
element selected.active {
background-color: @off;
color: @background;
}

View File

@ -0,0 +1,127 @@
/*
*
* Author : Aditya Shakya
* Mail : adi1090x@gmail.com
* Github : @adi1090x
* Twitter : @adi1090x
*
*/
configuration {
font: "Fira Code Nerd Font 10";
disable-history: false;
fullscreen: false;
hide-scrollbar: true;
sidebar-mode: false;
}
@import "../../../styles/colors.rasi"
* {
background-color: @background;
text-color: @foreground;
}
window {
transparency: "real";
border-radius: 20px;
location: center;
width: 950px;
x-offset: 0px;
y-offset: 0px;
}
prompt {
enabled: true;
padding: 10px;
background-color: @background;
text-color: @accent;
border: 0px 2px 0px 2px;
border-radius: 100%;
border-color: @accent;
}
textbox-prompt-colon {
expand: false;
str: " MPD ";
background-color: @accent;
text-color: @background;
padding: 10px 10px 0px 10px;
border-radius: 100%;
}
inputbar {
children: [ textbox-prompt-colon, prompt ];
spacing: 15px;
background-color: @background;
text-color: @foreground;
expand: false;
border: 0px;
border-radius: 0px;
border-color: @accent;
margin: 0px 0px 0px 0px;
padding: 0px;
position: center;
}
listview {
columns: 6;
lines: 1;
spacing: 15px;
cycle: true;
dynamic: true;
layout: vertical;
}
mainbox {
background-color: @background;
children: [ inputbar, listview ];
spacing: 15px;
margin: 40px;
}
element {
background-color: @background-light;
text-color: @foreground;
orientation: vertical;
border-radius: 100%;
}
element-text {
font: "feather 32";
expand: true;
horizontal-align: 0.5;
vertical-align: 0;
margin: 25px 0px 65px 0px;
}
element normal.urgent,
element alternate.urgent {
background-color: @off;
text-color: @background;
border-radius: 100%;
}
element normal.active,
element alternate.active {
background-color: @on;
text-color: @background;
}
element selected {
background-color: @accent;
text-color: @background;
border: 0px;
border-radius: 100%;
border-color: @border;
}
element selected.urgent {
background-color: @on;
text-color: @background;
}
element selected.active {
background-color: @off;
color: @background;
}

View File

@ -0,0 +1,127 @@
/*
*
* Author : Aditya Shakya
* Mail : adi1090x@gmail.com
* Github : @adi1090x
* Twitter : @adi1090x
*
*/
configuration {
font: "Fira Code Nerd Font 10";
disable-history: false;
fullscreen: false;
hide-scrollbar: true;
sidebar-mode: false;
}
@import "../../../styles/colors.rasi"
* {
background-color: @background;
text-color: @foreground;
}
window {
transparency: "real";
border-radius: 20px;
location: center;
width: 650px;
x-offset: 0px;
y-offset: 0px;
}
prompt {
enabled: true;
padding: 10px;
background-color: @background;
text-color: @accent;
border: 0px 2px 0px 2px;
border-radius: 100%;
border-color: @accent;
}
textbox-prompt-colon {
expand: false;
str: " Network ";
background-color: @accent;
text-color: @background;
padding: 10px 10px 0px 10px;
border-radius: 100%;
}
inputbar {
children: [ textbox-prompt-colon, prompt ];
spacing: 15px;
background-color: @background;
text-color: @foreground;
expand: false;
border: 0px;
border-radius: 0px;
border-color: @accent;
margin: 0px 0px 0px 0px;
padding: 0px;
position: center;
}
listview {
columns: 4;
lines: 1;
spacing: 15px;
cycle: true;
dynamic: true;
layout: vertical;
}
mainbox {
background-color: @background;
children: [ inputbar, listview ];
spacing: 15px;
margin: 40px;
}
element {
background-color: @background-light;
text-color: @foreground;
orientation: vertical;
border-radius: 100%;
}
element-text {
font: "feather 32";
expand: true;
horizontal-align: 0.5;
vertical-align: 0;
margin: 25px 0px 65px 0px;
}
element normal.urgent,
element alternate.urgent {
background-color: @off;
text-color: @background;
border-radius: 100%;
}
element normal.active,
element alternate.active {
background-color: @on;
text-color: @background;
}
element selected {
background-color: @accent;
text-color: @background;
border: 0px;
border-radius: 100%;
border-color: @border;
}
element selected.urgent {
background-color: @on;
text-color: @background;
}
element selected.active {
background-color: @off;
color: @background;
}

View File

@ -0,0 +1,127 @@
/*
*
* Author : Aditya Shakya
* Mail : adi1090x@gmail.com
* Github : @adi1090x
* Twitter : @adi1090x
*
*/
configuration {
font: "Fira Code Nerd Font 10";
disable-history: false;
fullscreen: false;
hide-scrollbar: true;
sidebar-mode: false;
}
@import "../../../styles/colors.rasi"
* {
background-color: @background;
text-color: @foreground;
}
window {
transparency: "real";
border-radius: 20px;
location: center;
width: 800px;
x-offset: 0px;
y-offset: 0px;
}
prompt {
enabled: true;
padding: 10px;
background-color: @background;
text-color: @accent;
border: 0px 2px 0px 2px;
border-radius: 100%;
border-color: @accent;
}
textbox-prompt-colon {
expand: false;
str: " System ";
background-color: @accent;
text-color: @background;
padding: 10px 10px 0px 10px;
border-radius: 100%;
}
inputbar {
children: [ textbox-prompt-colon, prompt ];
spacing: 15px;
background-color: @background;
text-color: @foreground;
expand: false;
border: 0px;
border-radius: 0px;
border-color: @accent;
margin: 0px 0px 0px 0px;
padding: 0px;
position: center;
}
listview {
columns: 5;
lines: 1;
spacing: 15px;
cycle: true;
dynamic: true;
layout: vertical;
}
mainbox {
background-color: @background;
children: [ inputbar, listview ];
spacing: 15px;
margin: 40px;
}
element {
background-color: @background-light;
text-color: @foreground;
orientation: vertical;
border-radius: 100%;
}
element-text {
font: "feather 32";
expand: true;
horizontal-align: 0.5;
vertical-align: 0;
margin: 25px 0px 65px 0px;
}
element normal.urgent,
element alternate.urgent {
background-color: @off;
text-color: @background;
border-radius: 100%;
}
element normal.active,
element alternate.active {
background-color: @on;
text-color: @background;
}
element selected {
background-color: @accent;
text-color: @background;
border: 0px;
border-radius: 100%;
border-color: @border;
}
element selected.urgent {
background-color: @on;
text-color: @background;
}
element selected.active {
background-color: @off;
color: @background;
}

View File

@ -0,0 +1,127 @@
/*
*
* Author : Aditya Shakya
* Mail : adi1090x@gmail.com
* Github : @adi1090x
* Twitter : @adi1090x
*
*/
configuration {
font: "Fira Code Nerd Font 10";
disable-history: false;
fullscreen: false;
hide-scrollbar: true;
sidebar-mode: false;
}
@import "../../../styles/colors.rasi"
* {
background-color: @background;
text-color: @foreground;
}
window {
transparency: "real";
border-radius: 20px;
location: center;
width: 950px;
x-offset: 0px;
y-offset: 0px;
}
prompt {
enabled: true;
padding: 10px;
background-color: @background;
text-color: @accent;
border: 0px 2px 0px 2px;
border-radius: 100%;
border-color: @accent;
}
textbox-prompt-colon {
expand: false;
str: " Quick Links ";
background-color: @accent;
text-color: @background;
padding: 10px 10px 0px 10px;
border-radius: 100%;
}
inputbar {
children: [ textbox-prompt-colon, prompt ];
spacing: 15px;
background-color: @background;
text-color: @foreground;
expand: false;
border: 0px;
border-radius: 0px;
border-color: @accent;
margin: 0px 0px 0px 0px;
padding: 0px;
position: center;
}
listview {
columns: 6;
lines: 1;
spacing: 15px;
cycle: true;
dynamic: true;
layout: vertical;
}
mainbox {
background-color: @background;
children: [ inputbar, listview ];
spacing: 15px;
margin: 40px;
}
element {
background-color: @background-light;
text-color: @foreground;
orientation: vertical;
border-radius: 100%;
}
element-text {
font: "feather 32";
expand: true;
horizontal-align: 0.5;
vertical-align: 0;
margin: 25px 0px 65px 0px;
}
element normal.urgent,
element alternate.urgent {
background-color: @off;
text-color: @background;
border-radius: 0px;
}
element normal.active,
element alternate.active {
background-color: @on;
text-color: @background;
}
element selected {
background-color: @accent;
text-color: @background;
border: 0px;
border-radius: 100%;
border-color: @border;
}
element selected.urgent {
background-color: @on;
text-color: @background;
}
element selected.active {
background-color: @off;
color: @background;
}

View File

@ -0,0 +1,127 @@
/*
*
* Author : Aditya Shakya
* Mail : adi1090x@gmail.com
* Github : @adi1090x
* Twitter : @adi1090x
*
*/
configuration {
font: "Fira Code Nerd Font 10";
disable-history: false;
fullscreen: false;
hide-scrollbar: true;
sidebar-mode: false;
}
@import "../../../styles/colors.rasi"
* {
background-color: @background;
text-color: @foreground;
}
window {
transparency: "real";
border-radius: 20px;
location: center;
width: 500px;
x-offset: 0px;
y-offset: 0px;
}
prompt {
enabled: true;
padding: 10px;
background-color: @background;
text-color: @accent;
border: 0px 2px 0px 2px;
border-radius: 100%;
border-color: @accent;
}
textbox-prompt-colon {
expand: false;
str: " Screenshot ";
background-color: @accent;
text-color: @background;
padding: 10px 10px 0px 10px;
border-radius: 100%;
}
inputbar {
children: [ textbox-prompt-colon, prompt ];
spacing: 15px;
background-color: @background;
text-color: @foreground;
expand: false;
border: 0px;
border-radius: 0px;
border-color: @accent;
margin: 0px 0px 0px 0px;
padding: 0px;
position: center;
}
listview {
columns: 3;
lines: 1;
spacing: 15px;
cycle: true;
dynamic: true;
layout: vertical;
}
mainbox {
background-color: @background;
children: [ inputbar, listview ];
spacing: 15px;
margin: 40px;
}
element {
background-color: @background-light;
text-color: @foreground;
orientation: vertical;
border-radius: 100%;
}
element-text {
font: "feather 32";
expand: true;
horizontal-align: 0.5;
vertical-align: 0;
margin: 25px 0px 65px 0px;
}
element normal.urgent,
element alternate.urgent {
background-color: @off;
text-color: @background;
border-radius: 0px;
}
element normal.active,
element alternate.active {
background-color: @on;
text-color: @background;
}
element selected {
background-color: @accent;
text-color: @background;
border: 0px;
border-radius: 100%;
border-color: @border;
}
element selected.urgent {
background-color: @on;
text-color: @background;
}
element selected.active {
background-color: @off;
color: @background;
}

View File

@ -0,0 +1,127 @@
/*
*
* Author : Aditya Shakya
* Mail : adi1090x@gmail.com
* Github : @adi1090x
* Twitter : @adi1090x
*
*/
configuration {
font: "Fira Code Nerd Font 10";
disable-history: false;
fullscreen: false;
hide-scrollbar: true;
sidebar-mode: false;
}
@import "../../../styles/colors.rasi"
* {
background-color: @background;
text-color: @foreground;
}
window {
transparency: "real";
border-radius: 20px;
location: center;
width: 700px;
x-offset: 0px;
y-offset: 0px;
}
prompt {
enabled: true;
padding: 10px;
background-color: @background;
text-color: @accent;
border: 0px 2px 0px 2px;
border-radius: 100%;
border-color: @accent;
}
textbox-prompt-colon {
expand: false;
str: " Time ";
background-color: @accent;
text-color: @background;
padding: 10px 10px 0px 10px;
border-radius: 100%;
}
inputbar {
children: [ textbox-prompt-colon, prompt ];
spacing: 15px;
background-color: @background;
text-color: @foreground;
expand: false;
border: 0px;
border-radius: 0px;
border-color: @accent;
margin: 0px 0px 0px 0px;
padding: 0px;
position: center;
}
listview {
columns: 3;
lines: 1;
spacing: 15px;
cycle: true;
dynamic: true;
layout: vertical;
}
mainbox {
background-color: @background;
children: [ inputbar, listview ];
spacing: 15px;
margin: 40px;
}
element {
background-color: @background-light;
text-color: @foreground;
orientation: vertical;
border-radius: 100%;
}
element-text {
font: "Hurmit Nerd Font Mono 48";
expand: true;
horizontal-align: 0.5;
vertical-align: 0;
margin: 25px 0px 90px 0px;
}
element normal.urgent,
element alternate.urgent {
background-color: @off;
text-color: @background;
border-radius: 0px;
}
element normal.active,
element alternate.active {
background-color: @on;
text-color: @background;
}
element selected {
background-color: @accent;
text-color: @background;
border: 0px;
border-radius: 100%;
border-color: @border;
}
element selected.urgent {
background-color: @on;
text-color: @background;
}
element selected.active {
background-color: @off;
color: @background;
}

View File

@ -0,0 +1,127 @@
/*
*
* Author : Aditya Shakya
* Mail : adi1090x@gmail.com
* Github : @adi1090x
* Twitter : @adi1090x
*
*/
configuration {
font: "Fira Code Nerd Font 10";
disable-history: false;
fullscreen: false;
hide-scrollbar: true;
sidebar-mode: false;
}
@import "../../../styles/colors.rasi"
* {
background-color: @background;
text-color: @foreground;
}
window {
transparency: "real";
border-radius: 20px;
location: center;
width: 500px;
x-offset: 0px;
y-offset: 0px;
}
prompt {
enabled: true;
padding: 10px;
background-color: @background;
text-color: @accent;
border: 0px 2px 0px 2px;
border-radius: 100%;
border-color: @accent;
}
textbox-prompt-colon {
expand: false;
str: " Volume ";
background-color: @accent;
text-color: @background;
padding: 10px 10px 0px 10px;
border-radius: 100%;
}
inputbar {
children: [ textbox-prompt-colon, prompt ];
spacing: 15px;
background-color: @background;
text-color: @foreground;
expand: false;
border: 0px;
border-radius: 0px;
border-color: @accent;
margin: 0px 0px 0px 0px;
padding: 0px;
position: center;
}
listview {
columns: 3;
lines: 1;
spacing: 15px;
cycle: true;
dynamic: true;
layout: vertical;
}
mainbox {
background-color: @background;
children: [ inputbar, listview ];
spacing: 15px;
margin: 40px;
}
element {
background-color: @background-light;
text-color: @foreground;
orientation: vertical;
border-radius: 100%;
}
element-text {
font: "feather 32";
expand: true;
horizontal-align: 0.5;
vertical-align: 0;
margin: 25px 0px 65px 0px;
}
element normal.urgent,
element alternate.urgent {
background-color: @off;
text-color: @background;
border-radius: 100%;
}
element normal.active,
element alternate.active {
background-color: @on;
text-color: @background;
}
element selected {
background-color: @accent;
text-color: @background;
border: 0px;
border-radius: 100%;
border-color: @border;
}
element selected.urgent {
background-color: @on;
text-color: @background;
}
element selected.active {
background-color: @off;
color: @background;
}

View File

@ -0,0 +1,127 @@
/*
*
* Author : Aditya Shakya
* Mail : adi1090x@gmail.com
* Github : @adi1090x
* Twitter : @adi1090x
*
*/
configuration {
font: "Fira Code Nerd Font 10";
disable-history: false;
fullscreen: false;
hide-scrollbar: true;
sidebar-mode: false;
}
@import "../../../styles/colors.rasi"
* {
background-color: @background;
text-color: @foreground;
}
window {
transparency: "real";
border-radius: 20px;
location: center;
width: 950px;
x-offset: 0px;
y-offset: 0px;
}
prompt {
enabled: true;
padding: 10px;
background-color: @background;
text-color: @accent;
border: 0px 2px 0px 2px;
border-radius: 12px;
border-color: @accent;
}
textbox-prompt-colon {
expand: false;
str: " Apps ";
background-color: @accent;
text-color: @background;
padding: 10px 10px 0px 10px;
border-radius: 12px;
}
inputbar {
children: [ textbox-prompt-colon, prompt ];
spacing: 15px;
background-color: @background;
text-color: @foreground;
expand: false;
border: 0px;
border-radius: 0px;
border-color: @accent;
margin: 0px 0px 0px 0px;
padding: 0px;
position: center;
}
listview {
columns: 6;
lines: 1;
spacing: 15px;
cycle: true;
dynamic: true;
layout: vertical;
}
mainbox {
background-color: @background;
children: [ inputbar, listview ];
spacing: 15px;
margin: 40px;
}
element {
background-color: @background-light;
text-color: @foreground;
orientation: vertical;
border-radius: 20px;
}
element-text {
font: "feather 32";
expand: true;
horizontal-align: 0.5;
vertical-align: 0;
margin: 25px 0px 65px 0px;
}
element normal.urgent,
element alternate.urgent {
background-color: @off;
text-color: @background;
border-radius: 20px;
}
element normal.active,
element alternate.active {
background-color: @on;
text-color: @background;
}
element selected {
background-color: @accent;
text-color: @background;
border: 0px;
border-radius: 20px;
border-color: @border;
}
element selected.urgent {
background-color: @on;
text-color: @background;
}
element selected.active {
background-color: @off;
color: @background;
}

View File

@ -0,0 +1,127 @@
/*
*
* Author : Aditya Shakya
* Mail : adi1090x@gmail.com
* Github : @adi1090x
* Twitter : @adi1090x
*
*/
configuration {
font: "Fira Code Nerd Font 10";
disable-history: false;
fullscreen: false;
hide-scrollbar: true;
sidebar-mode: false;
}
@import "../../../styles/colors.rasi"
* {
background-color: @background;
text-color: @foreground;
}
window {
transparency: "real";
border-radius: 20px;
location: center;
width: 500px;
x-offset: 0px;
y-offset: 0px;
}
prompt {
enabled: true;
padding: 10px;
background-color: @background;
text-color: @accent;
border: 0px 2px 0px 2px;
border-radius: 12px;
border-color: @accent;
}
textbox-prompt-colon {
expand: false;
str: " Brightness ";
background-color: @accent;
text-color: @background;
padding: 10px 10px 0px 10px;
border-radius: 12px;
}
inputbar {
children: [ textbox-prompt-colon, prompt ];
spacing: 15px;
background-color: @background;
text-color: @foreground;
expand: false;
border: 0px;
border-radius: 0px;
border-color: @accent;
margin: 0px 0px 0px 0px;
padding: 0px;
position: center;
}
listview {
columns: 3;
lines: 1;
spacing: 15px;
cycle: true;
dynamic: true;
layout: vertical;
}
mainbox {
background-color: @background;
children: [ inputbar, listview ];
spacing: 15px;
margin: 40px;
}
element {
background-color: @background-light;
text-color: @foreground;
orientation: vertical;
border-radius: 20px;
}
element-text {
font: "feather 32";
expand: true;
horizontal-align: 0.5;
vertical-align: 0;
margin: 25px 0px 65px 0px;
}
element normal.urgent,
element alternate.urgent {
background-color: @off;
text-color: @background;
border-radius: 20px;
}
element normal.active,
element alternate.active {
background-color: @on;
text-color: @background;
}
element selected {
background-color: @accent;
text-color: @background;
border: 0px;
border-radius: 20px;
border-color: @border;
}
element selected.urgent {
background-color: @on;
text-color: @background;
}
element selected.active {
background-color: @off;
color: @background;
}

Some files were not shown because too many files have changed in this diff Show More