diff --git a/colors.rasi b/colors.rasi new file mode 100644 index 0000000..29bc77b --- /dev/null +++ b/colors.rasi @@ -0,0 +1,18 @@ +/** + * + * Author : Aditya Shakya (adi1090x) + * Github : @adi1090x + * + * Colors + **/ + +* { + background: #1E1D2FFF; + background-alt: #282839FF; + foreground: #cba6f7; + selected: #cba6f7; + active: #cba6f7; + urgent: #cba6f7; + + font: "JetBrains Mono Nerd Font 10"; +} diff --git a/config.rasi b/config.rasi new file mode 100644 index 0000000..f9eb469 --- /dev/null +++ b/config.rasi @@ -0,0 +1,19 @@ +configuration{ + modi: "drun"; + icon-theme: "Zafiro"; + show-icons: true; + terminal: "kitty"; + drun-display-format: "{icon} {name}"; + location: 0; + disable-history: false; + hide-scrollbar: true; + display-drun: "  "; + display-run: ""; + display-window: "󰕰"; + display-Network: "󰤨"; + sidebar-mode: false; +} + +//@theme "catppuccin-mocha" + +@theme "~/.config/rofi/menu.rasi" diff --git a/menu.rasi b/menu.rasi new file mode 100644 index 0000000..35866f3 --- /dev/null +++ b/menu.rasi @@ -0,0 +1,118 @@ +* { + bg-col: #1E1D2FFF; + bg-col-light: #1E1D2FFF; + border-col: #1E1D2FFF; + selected-col: #1E1D2FFF; + blue: #cba6f7; + fg-col: #cdd6f4; + fg-col2: #cba6f7; + grey: #6c7086; + + width: 600; + font: "Jetbrains mono 14"; +} + +element-text, element-icon , mode-switcher { + background-color: inherit; + text-color: inherit; +} + +window { + height: 335px; + border: 0px; + border-color: @border-col; + background-color: @bg-col; + border-radius: 20px; + padding: 0px 20px 0px 0px; +} + +mainbox { + background-color: @bg-col; +} + +inputbar { + children: [prompt,entry]; + background-color: @bg-col; + border-radius: 5px; + padding: 2px; +} + +prompt { + enabled: false; + background-color: @blue; + padding: 5px; + text-color: @bg-col; + border-radius: 5px; + text-align:center; + margin: 0px 0px 0px 0px; +} + +textbox-prompt-colon { + expand: false; + str: ":"; + +} + +entry { + padding: 6px; + margin: 15px 0px 0px 15px; + text-color: @fg-col; + background-color: @bg-col; +} + +listview { + border: 0px 0px 0px; + padding: 4px 0px 4px; + margin: 0px 0px 0px 20px; + columns: 1; + lines: 5; + background-color: @bg-col; + fixed-height: false; +} + +element { + padding: 5px; + background-color: @bg-col; + text-color: @fg-col ; +} + +element-icon { + size: 25px; +} + +element selected { + background-color: #cba6f7 ; + border-radius: 5px; + text-color: #181825 ; +} + +mode-switcher { + spacing: 0; + } + +button { + padding: 10px; + background-color: @bg-col-light; + text-color: @grey; + vertical-align: 0.5; + horizontal-align: 0.5; +} + +button selected { + background-color: @bg-col; + text-color: @blue; +} + +message { + background-color: @bg-col-light; + margin: 2px; + padding: 2px; + border-radius: 5px; +} + +textbox { + padding: 6px; + margin: 20px 0px 0px 20px; + text-color: @blue; + background-color: @bg-col-light; +} diff --git a/powermenu.sh b/powermenu.sh new file mode 100755 index 0000000..8e96b17 --- /dev/null +++ b/powermenu.sh @@ -0,0 +1,87 @@ +#!/usr/bin/env bash + +## Author : Aditya Shakya (adi1090x) +## Github : @adi1090x + +# CMDs +uptime="`uptime -p | sed -e 's/up //g'`" + +# Options +shutdown='󰐥' +reboot='󰜉' +lock='' +suspend='' +logout='󰍃' + +# Rofi CMD +rofi_cmd() { + rofi -dmenu \ + -p "" \ + -mesg "Uptime: $uptime" \ + -theme "$HOME/.config/rofi/themes/powermenu.rasi" +} + +# Pass variables to rofi dmenu +run_rofi() { + echo -e "$lock\n$suspend\n$logout\n$reboot\n$shutdown" | rofi_cmd +} + +# Execute Command +run_cmd() { + case $1 in + --shutdown) + systemctl poweroff + ;; + --reboot) + systemctl reboot + ;; + --suspend) + mpc -q pause + amixer set Master mute + systemctl suspend + ;; + --logout) + case "$DESKTOP_SESSION" in + openbox) + openbox --exit + ;; + bspwm) + bspc quit + ;; + dwm) + pkill dwm + ;; + i3) + i3-msg exit + ;; + plasma) + qdbus org.kde.ksmserver /KSMServer logout 0 0 0 + ;; + esac + ;; + esac +} + +# Actions +chosen="$(run_rofi)" +case "${chosen}" in + "${shutdown}") + run_cmd --shutdown + ;; + "${reboot}") + run_cmd --reboot + ;; + "${lock}") + if [[ -x '/usr/bin/betterlockscreen' ]]; then + betterlockscreen -l + elif [[ -x '/usr/bin/i3lock' ]]; then + i3lock + fi + ;; + "${suspend}") + run_cmd --suspend + ;; + "${logout}") + run_cmd --logout + ;; +esac diff --git a/theme.rasi b/theme.rasi new file mode 100644 index 0000000..6caa3b3 --- /dev/null +++ b/theme.rasi @@ -0,0 +1,188 @@ +configuration { + // Other configuration settings + + kb-row-down: "Control+j, Down"; + kb-row-up: "Control+k, Up"; + + // You can also add other custom keybindings if needed +} +/** + * rofi -dump-theme output. + * Rofi version: 1.7.5+wayland3 + **/ +* { + red: rgba ( 220, 50, 47, 100 % ); + selected-active-foreground: var(background); + lightfg: rgba ( 88, 104, 117, 100 % ); + separatorcolor: var(foreground); + urgent-foreground: var(red); + alternate-urgent-background: var(lightbg); + lightbg: rgba ( 238, 232, 213, 100 % ); + background-color: transparent; + border-color: rgba(210, 138, 228, 0.9); + normal-background: var(background); + selected-urgent-background: var(red); + alternate-active-background: var(lightbg); + spacing: 2; + blue: rgba ( 38, 139, 210, 100 % ); + alternate-normal-foreground: var(foreground); + urgent-background: var(background); + selected-normal-foreground: var(lightbg); + active-foreground: var(blue); + background: rgba(26, 23, 27, 0.9); + selected-active-background: var(blue); + active-background: var(background); + selected-normal-background: var(background); + alternate-normal-background: var(background); + foreground: rgba(221, 221, 221, 0.9); + selected-urgent-foreground: var(background); + normal-foreground: var(foreground); + alternate-urgent-foreground: var(red); + alternate-active-foreground: var(blue); +} +element { + padding: 2px ; + cursor: pointer; + spacing: 5px ; + border: 1px; + opacity: 0.7; +} +element normal.normal { + background-color: var(normal-background); + text-color: var(normal-foreground); + opacity: 0.7; +} +element normal.urgent { + background-color: var(urgent-background); + text-color: var(urgent-foreground); +} +element normal.active { + background-color: var(active-background); + text-color: var(active-foreground); + opacity: 1; +} +element selected.normal { + background-color: var(selected-normal-background); + text-color: var(selected-normal-foreground); + opacity: 1; +} +element selected.urgent { + background-color: var(selected-urgent-background); + text-color: var(selected-urgent-foreground); +} +element selected.active { + background-color: var(selected-active-background); + text-color: var(selected-active-foreground); + opacity: 1; +} +element alternate.normal { + background-color: var(alternate-normal-background); + text-color: var(alternate-normal-foreground); +} +element alternate.urgent { + background-color: var(alternate-urgent-background); + text-color: var(alternate-urgent-foreground); +} +element alternate.active { + background-color: var(alternate-active-background); + text-color: var(alternate-active-foreground); +} +element-text { + background-color: var(background); + cursor: inherit; + highlight: inherit; + text-color: inherit; +} +element-icon { + background-color: transparent; + size: 1.0000em ; + cursor: inherit; + text-color: inherit; +} +window { + padding: 2; + border: 1; +} +mainbox { + padding: 8; + border: 0; +} +message { + padding: 1px ; + border-color: var(separatorcolor); + border: 2px dash 0px 0px ; +} +textbox { + text-color: var(foreground); +} +listview { + padding: 2px 0px 0px ; + scrollbar: true; + border-color: var(separatorcolor); + spacing: 2px ; + fixed-height: 0; + border: 2px dash 0px 0px ; +} +scrollbar { + width: 2px ; + padding: 2px; + handle-width: 4px ; + border: 1px; + border-color: white; + handle-color: white; + handle-radius: 4px; + border-radius: 8px; +} +sidebar { + border-color: var(separatorcolor); + border: 2px dash 0px 0px ; +} +button { + cursor: pointer; + spacing: 0; + text-color: var(normal-foreground); +} +button selected { + background-color: var(selected-normal-background); + text-color: var(selected-normal-foreground); +} +num-filtered-rows { + expand: false; + text-color: Gray; +} +num-rows { + expand: false; + text-color: Gray; +} +textbox-num-sep { + expand: false; + str: "/"; + text-color: Gray; +} +inputbar { + padding: 1px ; + spacing: 0px ; + text-color: var(normal-foreground); + children: [ "prompt","textbox-prompt-colon","entry","num-filtered-rows","textbox-num-sep","num-rows","case-indicator" ]; +} +case-indicator { + spacing: 0; + text-color: var(normal-foreground); +} +entry { + text-color: var(normal-foreground); + cursor: text; + spacing: 4; + placeholder-color: var(normal-foreground); + placeholder: "run.."; +} +prompt { + spacing: 0; + text-color: var(normal-foreground); +} +textbox-prompt-colon { + margin: 0px 0.3000em 0.0000em 0.0000em ; + expand: false; + str: ":"; + text-color: inherit; +} diff --git a/themes/nord.rasi b/themes/nord.rasi new file mode 100644 index 0000000..e81b5eb --- /dev/null +++ b/themes/nord.rasi @@ -0,0 +1,127 @@ +/** + * Nordic rofi theme + * Adapted by undiabler + * + * Nord Color palette imported from https://www.nordtheme.com/ + * + */ + + +* { + nord0: #2e3440; + nord1: #3b4252; + nord2: #434c5e; + nord3: #4c566a; + + nord4: #d8dee9; + nord5: #e5e9f0; + nord6: #eceff4; + + nord7: #8fbcbb; + nord8: #88c0d0; + nord9: #81a1c1; + nord10: #5e81ac; + nord11: #bf616a; + + nord12: #d08770; + nord13: #ebcb8b; + nord14: #a3be8c; + nord15: #b48ead; + + foreground: @nord9; + backlight: #ccffeedd; + background-color: transparent; + + highlight: underline bold #eceff4; + + transparent: rgba(46,52,64,0); +} + +window { + location: center; + anchor: center; + transparency: "screenshot"; + padding: 10px; + border: 0px; + border-radius: 6px; + + background-color: @transparent; + spacing: 0; + children: [mainbox]; + orientation: horizontal; +} + +mainbox { + spacing: 0; + children: [ inputbar, message, listview ]; +} + +message { + color: @nord0; + padding: 5; + border-color: @foreground; + border: 0px 2px 2px 2px; + background-color: @nord7; +} + +inputbar { + color: @nord6; + padding: 11px; + background-color: #3b4252; + + border: 1px; + border-radius: 6px 6px 0px 0px; + border-color: @nord10; +} + +entry, prompt, case-indicator { + text-font: inherit; + text-color:inherit; +} + +prompt { + margin: 0px 1em 0em 0em ; +} + +listview { + padding: 8px; + border-radius: 0px 0px 6px 6px; + border-color: @nord10; + border: 0px 1px 1px 1px; + background-color: rgba(46,52,64,0.9); + dynamic: false; +} + +element { + padding: 3px; + vertical-align: 0.5; + border-radius: 4px; + background-color: transparent; + color: @foreground; + text-color: rgb(216, 222, 233); +} + +element selected.normal { + background-color: @nord7; + text-color: #2e3440; +} + +element-text, element-icon { + background-color: inherit; + text-color: inherit; +} + +button { + padding: 6px; + color: @foreground; + horizontal-align: 0.5; + + border: 2px 0px 2px 2px; + border-radius: 4px 0px 0px 4px; + border-color: @foreground; +} + +button selected normal { + border: 2px 0px 2px 2px; + border-color: @foreground; +} \ No newline at end of file diff --git a/themes/powermenu.rasi b/themes/powermenu.rasi new file mode 100644 index 0000000..f9d3315 --- /dev/null +++ b/themes/powermenu.rasi @@ -0,0 +1,131 @@ +/** + * + * Author : Aditya Shakya (adi1090x) + * Github : @adi1090x + * + * Rofi Theme File + * Rofi Version: 1.7.3 + **/ + +/*****----- Configuration -----*****/ +configuration { + show-icons: false; +} + +/*****----- Global Properties -----*****/ +* { + /* Resolution : 1920x1080 */ + mainbox-spacing: 100px; + mainbox-margin: 150px 400px; + message-margin: 0px 350px; + message-padding: 15px; + message-border-radius: 15px; + listview-spacing: 50px; + element-padding: 35px 40px; + element-border-radius: 20px; + + prompt-font: "MesloLGS Nerd Font Bold 72"; + textbox-font: "MesloLGS Nerd Font 14"; + element-text-font: "feather 64"; + + background-window: black/30%; + background-normal: white/5%; + background-selected: white/15%; + foreground-normal: white; + foreground-selected: white; +} + +/*****----- Main Window -----*****/ +window { + transparency: "real"; + location: center; + anchor: center; + fullscreen: true; + cursor: "default"; + background-color: var(background-window); +} + +/*****----- Main Box -----*****/ +mainbox { + enabled: true; + spacing: var(mainbox-spacing); + margin: var(mainbox-margin); + background-color: transparent; + children: [ "dummy", "inputbar", "listview", "message", "dummy" ]; +} + +/*****----- Inputbar -----*****/ +inputbar { + enabled: true; + background-color: transparent; + children: [ "dummy", "prompt", "dummy"]; +} + +dummy { + background-color: transparent; +} + +prompt { + enabled: true; + font: var(prompt-font); + background-color: transparent; + text-color: var(foreground-normal); +} + +/*****----- Message -----*****/ +message { + enabled: true; + margin: var(message-margin); + padding: var(message-padding); + border-radius: var(message-border-radius); + background-color: var(background-normal); + text-color: var(foreground-normal); +} +textbox { + font: var(textbox-font); + background-color: transparent; + text-color: inherit; + vertical-align: 0.5; + horizontal-align: 0.5; +} + +/*****----- Listview -----*****/ +listview { + enabled: true; + expand: false; + columns: 5; + lines: 1; + cycle: true; + dynamic: true; + scrollbar: false; + layout: vertical; + reverse: false; + fixed-height: true; + fixed-columns: true; + + spacing: var(listview-spacing); + background-color: transparent; + cursor: "default"; +} + +/*****----- Elements -----*****/ +element { + enabled: true; + padding: var(element-padding); + border-radius: var(element-border-radius); + background-color: var(background-normal); + text-color: var(foreground-normal); + cursor: pointer; +} +element-text { + font: var(element-text-font); + background-color: transparent; + text-color: inherit; + cursor: inherit; + vertical-align: 0.5; + horizontal-align: 0.5; +} +element selected.normal { + background-color: var(background-selected); + text-color: var(foreground-selected); +} diff --git a/themes/sidetab-nord.rasi b/themes/sidetab-nord.rasi new file mode 100644 index 0000000..49a1f49 --- /dev/null +++ b/themes/sidetab-nord.rasi @@ -0,0 +1,78 @@ +* { + background: #1e222a; + foreground: #E5E9F0; + border-color: @background; + bg-selected: #282c34; + grey: #565c64; + spacing: 2; + width: 30em; + margin: 0; + padding: 0; +} + +#window { + background-color: @background; + border: 0; + padding: 0; + location: west; + anchor: west; + height: 100%; + margin: 0; +} + +#mainbox { + background-color: @background; + spacing: 10px; + margin: 10px 0 0 0; + width: 200px; +} + +#inputbar { + children: [prompt,entry]; + background-color: @background; +} + +#listview { + background-color: @background; + fixed-height: true; + margin: 5px 0 0 10px; +} + +#element { + padding: 5px; + background-color: @background; + text-color: @foreground; +} + +element selected { + background-color: @bg-selected; + text-color: @foreground; +} + +element-text { + background-color: inherit; + text-color: inherit; +} + +element-icon { + background-color: inherit; + margin: 0 4px 0 0; + size: 25px; +} + +#entry { + background-color: @background; + text-color: @foreground; + placeholder: "Search"; + placeholder-color: @grey; + font: "Sora Regular 20"; +} + +#prompt { + background-color: @background; + padding: 0 4px; + margin: 0 5px 0 0; + text-color: @foreground; + font: "Sora Regular 20"; +} +