diff --git a/.config/hypr/hyprland.conf b/.config/hypr/hyprland.conf new file mode 100644 index 0000000..a682dc2 --- /dev/null +++ b/.config/hypr/hyprland.conf @@ -0,0 +1,220 @@ +# You have to change this based on your monitor +monitor=HDMI-A-1,1920x1080@144,auto,auto +# Status bar :) +# exec-once=eww open bar +exec-once=waybar + +#Notification +exec-once=dunst +# Wallpaper +exec-once = hyprpaper -c .config/hyprpaper/hyprpaper.conf +# For screen sharing +exec-once=dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP +# For keyboard +exec-once=fcitx5 -D +# For lockscreen +exec-once=swayidle -w timeout 200 'swaylock-fancy' + +# Bluetooth +exec-once=blueman-applet # Make sure you have installed blueman + +# Screen Sharing +exec-once=systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP +exec-once=~/.config/hypr/scripts/screensharing.sh + +#--- РАСКЛАДКА КЛАВИАТУРЫ ----------------------------------------------------- +input { + kb_layout = us,ru + kb_variant = + kb_model = + kb_options = grp:alt_shift_toggle + kb_rules = + + follow_mouse = 1 + + repeat_rate=50 + repeat_delay=240 + touchpad { + natural_scroll = false + } + + numlock_by_default = true + sensitivity = 0 # -1.0 - 1.0, 0 means no modification. +} + +general { + gaps_in = 5 + gaps_out = 10 + border_size = 2 + col.active_border = rgba(d8dee8ff) rgba(afc8e9ff) 45deg + col.inactive_border = rgba(2f343fff) + + layout = dwindle + no_border_on_floating = true +} + +#--- ДЕКОРАЦИИ ОКОН ----------------------------------------------------------- decoration { +decoration { + rounding = 15 +# multisample_edges = true +# + blur { + enabled = true + size = 3 + passes = 1 + } + + drop_shadow = false + shadow_range = 4 + shadow_render_power = 3 + col.shadow = rgba(1a1a1aee) +} + +gestures { + workspace_swipe=true + workspace_swipe_min_speed_to_force=5 +} + +blurls=lockscreen + +animations { + enabled=1 + # bezier=overshot,0.05,0.9,0.1,1.1 + bezier=overshot,0.13,0.99,0.29,1.1 + animation=windows,1,4,overshot,popin + animation=fade,1,10,default + animation=workspaces,1,6,overshot,slide + animation=border,1,10,default +} + + + +#--- НАСТРОЙКА ЛАЙОУТОВ ------------------------------------------------------- +dwindle { + pseudotile = true # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below + preserve_split = true # you probably want this +} + +master { + new_is_master = true +} + +misc { + disable_hyprland_logo=true + disable_splash_rendering=true + mouse_move_enables_dpms=true + vfr = false +} + +######################################################################################## + +\ \ / (_) | | | __ \ | | + \ \ /\ / / _ _ __ __| | _____ _____ | |__) | _| | ___ ___ + \ \/ \/ / | | '_ \ / _` |/ _ \ \ /\ / / __| | _ / | | | |/ _ \/ __| + \ /\ / | | | | | (_| | (_) \ V V /\__ \ | | \ \ |_| | | __/\__ \ + \/ \/ |_|_| |_|\__,_|\___/ \_/\_/ |___/ |_| \_\__,_|_|\___||___/ + +######################################################################################## + + +# Float Necessary Windows +windowrule=float,Rofi +windowrule=float,pavucontrol +windowrulev2 = float,class:^()$,title:^(Picture in picture)$ +windowrulev2 = float,class:^(brave)$,title:^(Save File)$ +windowrulev2 = float,class:^(brave)$,title:^(Open File)$ +windowrulev2 = float,class:^(LibreWolf)$,title:^(Picture-in-Picture)$ +windowrulev2 = float,class:^(blueman-manager)$ +windowrulev2 = float,class:^(org.twosheds.iwgtk)$ +windowrulev2 = float,class:^(blueberry.py)$ +windowrulev2 = float,class:^(xdg-desktop-portal-gtk)$ +windowrulev2 = float,class:^(geeqie)$ + +# Increase the opacity +windowrule=opacity 0.92,nautilus +windowrule=opacity 0.96,discord +windowrule=opacity 0.9,VSCodium +windowrule=opacity 0.88,obsidian + +windowrule=opacity 1,neovim +bindm=SUPER,mouse:272,movewindow +bindm=SUPER,mouse:273,resizewindow + +# example binds +#--- КЛАВИША МОДИФИКАТОР ------------------------------------------------------ +$mainMod = SUPER + + +#--- ЗАПУСК ПРИЛОЖЕНИЙ -------------------------------------------------------- +bind = $mainMod, N, exec, nautilus +bind = $mainMod, RETURN, exec, alacritty +bind = $mainMod, D, exec, rofi -show drun + +#--- ХОТКЕИ ------------------------------------------------------------------- +bind = $mainMod SHIFT, Q, exit, +bind = $mainMod, C, killactive, +bind = $mainMod, F, togglefloating, +bind = $mainMod, P, pseudo, # dwindle +bind = $mainMod, T, togglesplit, # dwindle +bind = $mainMod SHIFT, F, fullscreen, + +bind = $mainMod CTRL, P, exec, poweroff +bind = $mainMod CTRL, R, exec, reboot + + +bind = , Print, exec, grim ~/screen-"$(date +%s)".png +bind = $mainMod, Print, exec, grim -g "$(slurp)" ~/screen-"$(date +%s)".png + + +#--- ПЕРЕКЛЮЧЕНИЕ ФОКУСА ------------------------------------------------------ +bind = $mainMod, left, movefocus, l +bind = $mainMod, right, movefocus, r +bind = $mainMod, up, movefocus, u +bind = $mainMod, down, movefocus, d +bind = $mainMod, h, movefocus, l +bind = $mainMod, l, movefocus, r +bind = $mainMod, k, movefocus, u +bind = $mainMod, j, movefocus, d + + + +#--- ПЕРЕКЛЮЧЕНИЕ ВОРКСПЕЙСОВ ------------------------------------------------- +bind = $mainMod, 1, workspace, 1 +bind = $mainMod, 2, workspace, 2 +bind = $mainMod, 3, workspace, 3 +bind = $mainMod, 4, workspace, 4 +bind = $mainMod, 5, workspace, 5 +bind = $mainMod, 6, workspace, 6 +bind = $mainMod, 7, workspace, 7 +bind = $mainMod, 8, workspace, 8 +bind = $mainMod, 9, workspace, 9 +bind = $mainMod, 0, workspace, 10 + + +#--- ПЕРЕМЕЩЕНИЕ ОКОН НА ДРУГОЙ ВОРКСПЕЙС ------------------------------------- +bind = $mainMod SHIFT, 1, movetoworkspace, 1 +bind = $mainMod SHIFT, 2, movetoworkspace, 2 +bind = $mainMod SHIFT, 3, movetoworkspace, 3 +bind = $mainMod SHIFT, 4, movetoworkspace, 4 +bind = $mainMod SHIFT, 5, movetoworkspace, 5 +bind = $mainMod SHIFT, 6, movetoworkspace, 6 +bind = $mainMod SHIFT, 7, movetoworkspace, 7 +bind = $mainMod SHIFT, 8, movetoworkspace, 8 +bind = $mainMod SHIFT, 9, movetoworkspace, 9 +bind = $mainMod SHIFT, 0, movetoworkspace, 10 + +#--- ПЕРЕХОД ПО ВОРКСПЕЙСАМ КОЛЕСОМ МЫШИ -------------------------------------- +bind = $mainMod, mouse_down, workspace, e+1 +bind = $mainMod, mouse_up, workspace, e-1 + + +#--- ПЕРЕМЕЩЕНИЕ И РЕСАЙЗ ОКОН МЫШЬЮ ------------------------------------------ +bindm = $mainMod, mouse:272, movewindow +bindm = $mainMod, mouse:273, resizewindow + + +#--- РЕСАЙЗ ------------------------------------------------------------------- +bind = $mainMod CTRL, left, resizeactive,-50 0 +bind = $mainMod CTRL, right, resizeactive,50 0 +bind = $mainMod CTRL, up, resizeactive,0 -50 +bind = $mainMod CTRL, down, resizeactive,0 50 diff --git a/.config/hypr/scripts/appLaunch/colors/adapta.rasi b/.config/hypr/scripts/appLaunch/colors/adapta.rasi new file mode 100644 index 0000000..dcde9e5 --- /dev/null +++ b/.config/hypr/scripts/appLaunch/colors/adapta.rasi @@ -0,0 +1,16 @@ +/** + * + * Author : Aditya Shakya (adi1090x) + * Github : @adi1090x + * + * Colors + **/ + +* { + background: #222D32FF; + background-alt: #29353BFF; + foreground: #B8C2C6FF; + selected: #00BCD4FF; + active: #21FF90FF; + urgent: #FF4B60FF; +} diff --git a/.config/hypr/scripts/appLaunch/colors/arc.rasi b/.config/hypr/scripts/appLaunch/colors/arc.rasi new file mode 100644 index 0000000..0dfb773 --- /dev/null +++ b/.config/hypr/scripts/appLaunch/colors/arc.rasi @@ -0,0 +1,16 @@ +/** + * + * Author : Aditya Shakya (adi1090x) + * Github : @adi1090x + * + * Colors + **/ + +* { + background: #2F343FFF; + background-alt: #383C4AFF; + foreground: #BAC5D0FF; + selected: #5294E2FF; + active: #98C379FF; + urgent: #E06B74FF; +} diff --git a/.config/hypr/scripts/appLaunch/colors/black.rasi b/.config/hypr/scripts/appLaunch/colors/black.rasi new file mode 100644 index 0000000..fa7b76f --- /dev/null +++ b/.config/hypr/scripts/appLaunch/colors/black.rasi @@ -0,0 +1,16 @@ +/** + * + * Author : Aditya Shakya (adi1090x) + * Github : @adi1090x + * + * Colors + **/ + +* { + background: #000000FF; + background-alt: #101010FF; + foreground: #FFFFFFFF; + selected: #62AEEFFF; + active: #98C379FF; + urgent: #E06B74FF; +} diff --git a/.config/hypr/scripts/appLaunch/colors/catppuccin.rasi b/.config/hypr/scripts/appLaunch/colors/catppuccin.rasi new file mode 100644 index 0000000..62c5945 --- /dev/null +++ b/.config/hypr/scripts/appLaunch/colors/catppuccin.rasi @@ -0,0 +1,16 @@ +/** + * + * Author : Aditya Shakya (adi1090x) + * Github : @adi1090x + * + * Colors + **/ + +* { + background: #1E1D2FFF; + background-alt: #282839FF; + foreground: #D9E0EEFF; + selected: #7AA2F7FF; + active: #ABE9B3FF; + urgent: #F28FADFF; +} diff --git a/.config/hypr/scripts/appLaunch/colors/cyberpunk.rasi b/.config/hypr/scripts/appLaunch/colors/cyberpunk.rasi new file mode 100644 index 0000000..f5fa0e7 --- /dev/null +++ b/.config/hypr/scripts/appLaunch/colors/cyberpunk.rasi @@ -0,0 +1,16 @@ +/** + * + * Author : Aditya Shakya (adi1090x) + * Github : @adi1090x + * + * Colors + **/ + +* { + background: #000B1EFF; + background-alt: #0A1528FF; + foreground: #0ABDC6FF; + selected: #0ABDC6FF; + active: #00FF00FF; + urgent: #FF0000FF; +} diff --git a/.config/hypr/scripts/appLaunch/colors/dracula.rasi b/.config/hypr/scripts/appLaunch/colors/dracula.rasi new file mode 100644 index 0000000..7ae606d --- /dev/null +++ b/.config/hypr/scripts/appLaunch/colors/dracula.rasi @@ -0,0 +1,16 @@ +/** + * + * Author : Aditya Shakya (adi1090x) + * Github : @adi1090x + * + * Colors + **/ + +* { + background: #1E1F29FF; + background-alt: #282A36FF; + foreground: #FFFFFFFF; + selected: #BD93F9FF; + active: #50FA7BFF; + urgent: #FF5555FF; +} diff --git a/.config/hypr/scripts/appLaunch/colors/everforest.rasi b/.config/hypr/scripts/appLaunch/colors/everforest.rasi new file mode 100644 index 0000000..83d4f71 --- /dev/null +++ b/.config/hypr/scripts/appLaunch/colors/everforest.rasi @@ -0,0 +1,16 @@ +/** + * + * Author : Aditya Shakya (adi1090x) + * Github : @adi1090x + * + * Colors + **/ + +* { + background: #323D43FF; + background-alt: #3C474DFF; + foreground: #DAD1BEFF; + selected: #7FBBB3FF; + active: #A7C080FF; + urgent: #E67E80FF; +} diff --git a/.config/hypr/scripts/appLaunch/colors/gruvbox.rasi b/.config/hypr/scripts/appLaunch/colors/gruvbox.rasi new file mode 100644 index 0000000..2ee85d0 --- /dev/null +++ b/.config/hypr/scripts/appLaunch/colors/gruvbox.rasi @@ -0,0 +1,16 @@ +/** + * + * Author : Aditya Shakya (adi1090x) + * Github : @adi1090x + * + * Colors + **/ + +* { + background: #282828FF; + background-alt: #353535FF; + foreground: #EBDBB2FF; + selected: #83A598FF; + active: #B8BB26FF; + urgent: #FB4934FF; +} diff --git a/.config/hypr/scripts/appLaunch/colors/lovelace.rasi b/.config/hypr/scripts/appLaunch/colors/lovelace.rasi new file mode 100644 index 0000000..80140ee --- /dev/null +++ b/.config/hypr/scripts/appLaunch/colors/lovelace.rasi @@ -0,0 +1,16 @@ +/** + * + * Author : Aditya Shakya (adi1090x) + * Github : @adi1090x + * + * Colors + **/ + +* { + background: #1D1F28FF; + background-alt: #282A36FF; + foreground: #FDFDFDFF; + selected: #79E6F3FF; + active: #5ADECDFF; + urgent: #F37F97FF; +} diff --git a/.config/hypr/scripts/appLaunch/colors/navy.rasi b/.config/hypr/scripts/appLaunch/colors/navy.rasi new file mode 100644 index 0000000..1289f53 --- /dev/null +++ b/.config/hypr/scripts/appLaunch/colors/navy.rasi @@ -0,0 +1,16 @@ +/** + * + * Author : Aditya Shakya (adi1090x) + * Github : @adi1090x + * + * Colors + **/ + +* { + background: #021B21FF; + background-alt: #0C252BFF; + foreground: #F2F1B9FF; + selected: #44B5B1FF; + active: #7CBF9EFF; + urgent: #C2454EFF; +} diff --git a/.config/hypr/scripts/appLaunch/colors/nord.rasi b/.config/hypr/scripts/appLaunch/colors/nord.rasi new file mode 100644 index 0000000..c6bc05d --- /dev/null +++ b/.config/hypr/scripts/appLaunch/colors/nord.rasi @@ -0,0 +1,16 @@ +/** + * + * Author : Aditya Shakya (adi1090x) + * Github : @adi1090x + * + * Colors + **/ + +* { + background: #2E3440FF; + background-alt: #383E4AFF; + foreground: #E5E9F0FF; + selected: #81A1C1FF; + active: #A3BE8CFF; + urgent: #BF616AFF; +} diff --git a/.config/hypr/scripts/appLaunch/colors/onedark.rasi b/.config/hypr/scripts/appLaunch/colors/onedark.rasi new file mode 100644 index 0000000..10dec82 --- /dev/null +++ b/.config/hypr/scripts/appLaunch/colors/onedark.rasi @@ -0,0 +1,16 @@ +/** + * + * Author : Aditya Shakya (adi1090x) + * Github : @adi1090x + * + * Colors + **/ + +* { + background: #1B1B23; + background-alt: #282B31FF; + foreground: #FFFFFFFF; + selected: #61AFEFFF; + active: #98C379FF; + urgent: #E06C75FF; +} diff --git a/.config/hypr/scripts/appLaunch/colors/paper.rasi b/.config/hypr/scripts/appLaunch/colors/paper.rasi new file mode 100644 index 0000000..c3d76e8 --- /dev/null +++ b/.config/hypr/scripts/appLaunch/colors/paper.rasi @@ -0,0 +1,16 @@ +/** + * + * Author : Aditya Shakya (adi1090x) + * Github : @adi1090x + * + * Colors + **/ + +* { + background: #F1F1F1FF; + background-alt: #E0E0E0FF; + foreground: #252525FF; + selected: #008EC4FF; + active: #10A778FF; + urgent: #C30771FF; +} diff --git a/.config/hypr/scripts/appLaunch/colors/solarized.rasi b/.config/hypr/scripts/appLaunch/colors/solarized.rasi new file mode 100644 index 0000000..9051e13 --- /dev/null +++ b/.config/hypr/scripts/appLaunch/colors/solarized.rasi @@ -0,0 +1,16 @@ +/** + * + * Author : Aditya Shakya (adi1090x) + * Github : @adi1090x + * + * Colors + **/ + +* { + background: #002B36FF; + background-alt: #073642FF; + foreground: #EEE8D5FF; + selected: #268BD2FF; + active: #859900FF; + urgent: #DC322FFF; +} diff --git a/.config/hypr/scripts/appLaunch/colors/tokyonight.rasi b/.config/hypr/scripts/appLaunch/colors/tokyonight.rasi new file mode 100644 index 0000000..1145cbd --- /dev/null +++ b/.config/hypr/scripts/appLaunch/colors/tokyonight.rasi @@ -0,0 +1,16 @@ +/** + * + * Author : Levi Lacoss (fishyfishfish55) + * Github : @fishyfishfish55 + * + * Colors + **/ + +* { + background: #15161EFF; + background-alt: #1A1B26FF; + foreground: #C0CAF5FF; + selected: #33467CFF; + active: #414868FF; + urgent: #F7768EFF; +} diff --git a/.config/hypr/scripts/appLaunch/colors/yousai.rasi b/.config/hypr/scripts/appLaunch/colors/yousai.rasi new file mode 100644 index 0000000..757cab3 --- /dev/null +++ b/.config/hypr/scripts/appLaunch/colors/yousai.rasi @@ -0,0 +1,16 @@ +/** + * + * Author : Aditya Shakya (adi1090x) + * Github : @adi1090x + * + * Colors + **/ + +* { + background: #F5E7DEFF; + background-alt: #EBDCD2FF; + foreground: #34302DFF; + selected: #D97742FF; + active: #BF8F60FF; + urgent: #B23636FF; +} diff --git a/.config/hypr/scripts/appLaunch/launcher.sh b/.config/hypr/scripts/appLaunch/launcher.sh new file mode 100755 index 0000000..aea9dbd --- /dev/null +++ b/.config/hypr/scripts/appLaunch/launcher.sh @@ -0,0 +1,20 @@ +#!/usr/bin/env bash + +## Author : Aditya Shakya (adi1090x) +## Github : @adi1090x +# +## Rofi : Launcher (Modi Drun, Run, File Browser, Window) +# +## Available Styles +# +## style-1 style-2 style-3 style-4 style-5 +## style-6 style-7 style-8 style-9 style-10 +## style-11 style-12 style-13 style-14 style-15 + +dir="$HOME/.config/hypr/scripts/appLaunch/" +theme='style-3' + +## Run +rofi \ + -show drun \ + -theme ${dir}/${theme}.rasi diff --git a/.config/hypr/scripts/appLaunch/shared/colors.rasi b/.config/hypr/scripts/appLaunch/shared/colors.rasi new file mode 100644 index 0000000..1fd6685 --- /dev/null +++ b/.config/hypr/scripts/appLaunch/shared/colors.rasi @@ -0,0 +1,18 @@ +/** + * + * Author : Aditya Shakya (adi1090x) + * Github : @adi1090x + * + * Colors + * + * Available Colors Schemes + * + * adapta catppuccin everforest navy paper + * arc cyberpunk gruvbox nord solarized + * black dracula lovelace onedark yousai + * + **/ + +/* Import color-scheme from `colors` directory */ + +@import "~/.config/hypr/scripts/appLaunch/colors/onedark.rasi" diff --git a/.config/hypr/scripts/appLaunch/shared/fonts.rasi b/.config/hypr/scripts/appLaunch/shared/fonts.rasi new file mode 100644 index 0000000..430c73d --- /dev/null +++ b/.config/hypr/scripts/appLaunch/shared/fonts.rasi @@ -0,0 +1,12 @@ +/** + * + * Author : Aditya Shakya (adi1090x) + * Github : @adi1090x + * + * Fonts + * + **/ + +* { + font: "JetBrains Mono Nerd Font 10"; +} diff --git a/.config/hypr/scripts/appLaunch/style-1.rasi b/.config/hypr/scripts/appLaunch/style-1.rasi new file mode 100644 index 0000000..2fff263 --- /dev/null +++ b/.config/hypr/scripts/appLaunch/style-1.rasi @@ -0,0 +1,307 @@ +/** + * + * Author : Aditya Shakya (adi1090x) + * Github : @adi1090x + * + * Rofi Theme File + * Rofi Version: 1.7.3 + **/ + +/*****----- Configuration -----*****/ +configuration { + modi: "drun,run,filebrowser"; + show-icons: false; + display-drun: " Apps"; + display-run: " Run"; + display-filebrowser: " Files"; + display-window: " Windows"; + drun-display-format: "{name} [({generic})]"; + window-format: "{w} · {c} · {t}"; +} + +/*****----- Global Properties -----*****/ +@import "shared/colors.rasi" +@import "shared/fonts.rasi" + +* { + border-colour: var(selected); + handle-colour: var(selected); + background-colour: var(background); + foreground-colour: var(foreground); + alternate-background: var(background-alt); + normal-background: var(background); + normal-foreground: var(foreground); + urgent-background: var(urgent); + urgent-foreground: var(background); + active-background: var(active); + active-foreground: var(background); + selected-normal-background: var(selected); + selected-normal-foreground: var(background); + selected-urgent-background: var(active); + selected-urgent-foreground: var(background); + selected-active-background: var(urgent); + selected-active-foreground: var(background); + alternate-normal-background: var(background); + alternate-normal-foreground: var(foreground); + alternate-urgent-background: var(urgent); + alternate-urgent-foreground: var(background); + alternate-active-background: var(active); + alternate-active-foreground: var(background); +} + +/*****----- Main Window -----*****/ +window { + /* properties for window widget */ + transparency: "real"; + location: center; + anchor: center; + fullscreen: false; + width: 800px; + x-offset: 0px; + y-offset: 0px; + + /* properties for all widgets */ + enabled: true; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 20px; + border-color: @border-colour; + cursor: "default"; + /* Backgroud Colors */ + background-color: @background-colour; + /* Backgroud Image */ + //background-image: url("/path/to/image.png", none); + /* Simple Linear Gradient */ + //background-image: linear-gradient(red, orange, pink, purple); + /* Directional Linear Gradient */ + //background-image: linear-gradient(to bottom, pink, yellow, magenta); + /* Angle Linear Gradient */ + //background-image: linear-gradient(45, cyan, purple, indigo); +} + +/*****----- Main Box -----*****/ +mainbox { + enabled: true; + spacing: 10px; + margin: 0px; + padding: 40px; + border: 0px solid; + border-radius: 0px 0px 0px 0px; + border-color: @border-colour; + background-color: transparent; + children: [ "inputbar", "message", "listview", "mode-switcher" ]; +} + +/*****----- Inputbar -----*****/ +inputbar { + enabled: true; + spacing: 10px; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; + children: [ "prompt", "textbox-prompt-colon", "entry" ]; +} + +prompt { + enabled: true; + background-color: inherit; + text-color: inherit; +} +textbox-prompt-colon { + enabled: true; + expand: false; + str: "::"; + background-color: inherit; + text-color: inherit; +} +entry { + enabled: true; + background-color: inherit; + text-color: inherit; + cursor: text; + placeholder: "Search..."; + placeholder-color: inherit; +} +num-filtered-rows { + enabled: true; + expand: false; + background-color: inherit; + text-color: inherit; +} +textbox-num-sep { + enabled: true; + expand: false; + str: "/"; + background-color: inherit; + text-color: inherit; +} +num-rows { + enabled: true; + expand: false; + background-color: inherit; + text-color: inherit; +} +case-indicator { + enabled: true; + background-color: inherit; + text-color: inherit; +} + +/*****----- Listview -----*****/ +listview { + enabled: true; + columns: 2; + lines: 10; + cycle: true; + dynamic: true; + scrollbar: true; + layout: vertical; + reverse: false; + fixed-height: true; + fixed-columns: true; + + spacing: 5px; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; + cursor: "default"; +} +scrollbar { + handle-width: 10px ; + handle-color: @handle-colour; + border-radius: 10px; + background-color: @alternate-background; +} + +/*****----- Elements -----*****/ +element { + enabled: true; + spacing: 10px; + margin: 0px; + padding: 5px 10px; + border: 0px solid; + border-radius: 20px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; + cursor: pointer; +} +element normal.normal { + background-color: var(normal-background); + text-color: var(normal-foreground); +} +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); +} +element selected.normal { + background-color: var(selected-normal-background); + text-color: var(selected-normal-foreground); +} +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); +} +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-icon { + background-color: transparent; + text-color: inherit; + size: 24px; + cursor: inherit; +} +element-text { + background-color: transparent; + text-color: inherit; + highlight: inherit; + cursor: inherit; + vertical-align: 0.5; + horizontal-align: 0.0; +} + +/*****----- Mode Switcher -----*****/ +mode-switcher{ + enabled: true; + spacing: 10px; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; +} +button { + padding: 5px 10px; + border: 0px solid; + border-radius: 20px; + border-color: @border-colour; + background-color: @alternate-background; + text-color: inherit; + cursor: pointer; +} +button selected { + background-color: var(selected-normal-background); + text-color: var(selected-normal-foreground); +} + +/*****----- Message -----*****/ +message { + enabled: true; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px 0px 0px 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; +} +textbox { + padding: 5px 10px; + border: 0px solid; + border-radius: 20px; + border-color: @border-colour; + background-color: @alternate-background; + text-color: @foreground-colour; + vertical-align: 0.5; + horizontal-align: 0.0; + highlight: none; + placeholder-color: @foreground-colour; + blink: true; + markup: true; +} +error-message { + padding: 10px; + border: 2px solid; + border-radius: 20px; + border-color: @border-colour; + background-color: @background-colour; + text-color: @foreground-colour; +} diff --git a/.config/hypr/scripts/appLaunch/style-10.rasi b/.config/hypr/scripts/appLaunch/style-10.rasi new file mode 100644 index 0000000..e3f413b --- /dev/null +++ b/.config/hypr/scripts/appLaunch/style-10.rasi @@ -0,0 +1,323 @@ +/** + * + * Author : Aditya Shakya (adi1090x) + * Github : @adi1090x + * + * Rofi Theme File + * Rofi Version: 1.7.3 + **/ + +/*****----- Configuration -----*****/ +configuration { + modi: "drun,run"; + show-icons: false; + display-drun: ""; + display-run: ""; + display-filebrowser: ""; + display-window: ""; + drun-display-format: "{name}"; + window-format: "{w} · {c} · {t}"; +} + +/*****----- Global Properties -----*****/ +@import "shared/colors.rasi" +@import "shared/fonts.rasi" + +* { + border-colour: var(selected); + handle-colour: var(foreground); + background-colour: var(background); + foreground-colour: var(foreground); + alternate-background: var(background-alt); + normal-background: var(background); + normal-foreground: var(foreground); + urgent-background: var(urgent); + urgent-foreground: var(background); + active-background: var(active); + active-foreground: var(background); + selected-normal-background: var(selected); + selected-normal-foreground: var(background); + selected-urgent-background: var(active); + selected-urgent-foreground: var(background); + selected-active-background: var(urgent); + selected-active-foreground: var(background); + alternate-normal-background: var(background); + alternate-normal-foreground: var(foreground); + alternate-urgent-background: var(urgent); + alternate-urgent-foreground: var(background); + alternate-active-background: var(active); + alternate-active-foreground: var(background); +} + +/*****----- Main Window -----*****/ +window { + /* properties for window widget */ + transparency: "real"; + location: north; + anchor: north; + fullscreen: false; + width: 100%; + x-offset: 0px; + y-offset: 0px; + + children: [ horibox ]; + + /* properties for all widgets */ + enabled: true; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + cursor: "default"; + /* Backgroud Colors */ + background-color: @background-colour; + /* Backgroud Image */ + //background-image: url("/path/to/image.png", none); + /* Simple Linear Gradient */ + //background-image: linear-gradient(red, orange, pink, purple); + /* Directional Linear Gradient */ + //background-image: linear-gradient(to bottom, pink, yellow, magenta); + /* Angle Linear Gradient */ + //background-image: linear-gradient(45, cyan, purple, indigo); +} + +/*****----- Horizontal Box -----*****/ +horibox { + spacing: 0px; + background-color: @background-colour; + text-color: @foreground-colour; + orientation: horizontal; + children: [ "prompt", "textbox-prompt-colon","entry", "listview" ]; +} + +/*****----- Main Box -----*****/ +mainbox { + enabled: true; + spacing: 20px; + margin: 0px; + padding: 40px; + border: 0px solid; + border-radius: 0px 0px 0px 0px; + border-color: @border-colour; + background-color: transparent; + children: [ "inputbar", "message", "listview", "mode-switcher" ]; +} + +/*****----- Inputbar -----*****/ +inputbar { + enabled: true; + spacing: 10px; + margin: 0px; + padding: 8px; + border: 0px solid; + border-radius: 4px; + border-color: @border-colour; + background-color: @alternate-background; + text-color: @foreground-colour; + children: [ "prompt", "entry" ]; +} + +prompt { + enabled: true; + padding: 10px; + background-color: inherit; + text-color: inherit; +} +textbox-prompt-colon { + enabled: true; + padding: 10px 0px 10px 0px; + expand: false; + str: "::"; + background-color: inherit; + text-color: inherit; +} +entry { + enabled: true; + padding: 10px; + expand: false; + width: 20em; + background-color: inherit; + text-color: inherit; + cursor: text; + placeholder: "search..."; + placeholder-color: inherit; +} +num-filtered-rows { + enabled: true; + expand: false; + background-color: inherit; + text-color: inherit; +} +textbox-num-sep { + enabled: true; + expand: false; + str: "/"; + background-color: inherit; + text-color: inherit; +} +num-rows { + enabled: true; + expand: false; + background-color: inherit; + text-color: inherit; +} +case-indicator { + enabled: true; + background-color: inherit; + text-color: inherit; +} + +/*****----- Listview -----*****/ +listview { + enabled: true; + columns: 1; + lines: 100; + cycle: true; + dynamic: true; + scrollbar: false; + layout: horizontal; + reverse: false; + fixed-height: true; + fixed-columns: true; + + spacing: 10px; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; + cursor: "default"; +} +scrollbar { + handle-width: 5px ; + handle-color: @handle-colour; + border-radius: 8px; + background-color: @alternate-background; +} + +/*****----- Elements -----*****/ +element { + enabled: true; + spacing: 8px; + margin: 0px; + padding: 10px 8px; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; + cursor: pointer; +} +element normal.normal { + background-color: var(normal-background); + text-color: var(normal-foreground); +} +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); +} +element selected.normal { + background-color: var(selected-normal-background); + text-color: var(selected-normal-foreground); +} +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); +} +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-icon { + background-color: transparent; + text-color: inherit; + size: 24px; + cursor: inherit; +} +element-text { + background-color: transparent; + text-color: inherit; + highlight: inherit; + cursor: inherit; + vertical-align: 0.5; + horizontal-align: 0.0; +} + +/*****----- Mode Switcher -----*****/ +mode-switcher{ + enabled: true; + spacing: 10px; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 4px; + border-color: @border-colour; + background-color: @alternate-background; + text-color: @foreground-colour; +} +button { + padding: 8px; + border: 0px solid; + border-radius: 4px; + border-color: @border-colour; + background-color: transparent; + text-color: inherit; + cursor: pointer; +} +button selected { + background-color: var(normal-foreground); + text-color: var(normal-background); +} + +/*****----- Message -----*****/ +message { + enabled: true; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px 0px 0px 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; +} +textbox { + padding: 8px; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + background-color: @alternate-background; + text-color: @foreground-colour; + vertical-align: 0.5; + horizontal-align: 0.0; + highlight: none; + placeholder-color: @foreground-colour; + blink: true; + markup: true; +} +error-message { + padding: 0px; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + background-color: @background-colour; + text-color: @foreground-colour; +} diff --git a/.config/hypr/scripts/appLaunch/style-11.rasi b/.config/hypr/scripts/appLaunch/style-11.rasi new file mode 100644 index 0000000..59f8849 --- /dev/null +++ b/.config/hypr/scripts/appLaunch/style-11.rasi @@ -0,0 +1,307 @@ +/** + * + * Author : Aditya Shakya (adi1090x) + * Github : @adi1090x + * + * Rofi Theme File + * Rofi Version: 1.7.3 + **/ + +/*****----- Configuration -----*****/ +configuration { + modi: "drun,run,filebrowser"; + show-icons: false; + display-drun: " Apps"; + display-run: " Run"; + display-filebrowser: " Files"; + display-window: " Windows"; + drun-display-format: "{name} [({generic})]"; + window-format: "{w} · {c} · {t}"; +} + +/*****----- Global Properties -----*****/ +@import "shared/colors.rasi" +@import "shared/fonts.rasi" + +* { + border-colour: var(selected); + handle-colour: var(selected); + background-colour: var(background); + foreground-colour: var(foreground); + alternate-background: var(background-alt); + normal-background: var(background); + normal-foreground: var(foreground); + urgent-background: var(urgent); + urgent-foreground: var(background); + active-background: var(active); + active-foreground: var(background); + selected-normal-background: var(selected); + selected-normal-foreground: var(background); + selected-urgent-background: var(active); + selected-urgent-foreground: var(background); + selected-active-background: var(urgent); + selected-active-foreground: var(background); + alternate-normal-background: var(background); + alternate-normal-foreground: var(foreground); + alternate-urgent-background: var(urgent); + alternate-urgent-foreground: var(background); + alternate-active-background: var(active); + alternate-active-foreground: var(background); +} + +/*****----- Main Window -----*****/ +window { + /* properties for window widget */ + transparency: "real"; + location: center; + anchor: center; + fullscreen: false; + width: 600px; + x-offset: 0px; + y-offset: 0px; + + /* properties for all widgets */ + enabled: true; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + cursor: "default"; + /* Backgroud Colors */ + background-color: @background-colour; + /* Backgroud Image */ + //background-image: url("/path/to/image.png", none); + /* Simple Linear Gradient */ + //background-image: linear-gradient(red, orange, pink, purple); + /* Directional Linear Gradient */ + //background-image: linear-gradient(to bottom, pink, yellow, magenta); + /* Angle Linear Gradient */ + //background-image: linear-gradient(45, cyan, purple, indigo); +} + +/*****----- Main Box -----*****/ +mainbox { + enabled: true; + spacing: 10px; + margin: 0px; + padding: 20px; + border: 0px solid; + border-radius: 0px 0px 0px 0px; + border-color: @border-colour; + background-color: transparent; + children: [ "inputbar", "message", "listview" ]; +} + +/*****----- Inputbar -----*****/ +inputbar { + enabled: true; + spacing: 10px; + margin: 0px; + padding: 10px; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + background-color: @alternate-background; + text-color: @foreground-colour; + children: [ "prompt", "textbox-prompt-colon", "entry" ]; +} + +prompt { + enabled: true; + background-color: inherit; + text-color: inherit; +} +textbox-prompt-colon { + enabled: true; + expand: false; + str: "::"; + background-color: inherit; + text-color: inherit; +} +entry { + enabled: true; + background-color: inherit; + text-color: inherit; + cursor: text; + placeholder: "Search..."; + placeholder-color: inherit; +} +num-filtered-rows { + enabled: true; + expand: false; + background-color: inherit; + text-color: inherit; +} +textbox-num-sep { + enabled: true; + expand: false; + str: "/"; + background-color: inherit; + text-color: inherit; +} +num-rows { + enabled: true; + expand: false; + background-color: inherit; + text-color: inherit; +} +case-indicator { + enabled: true; + background-color: inherit; + text-color: inherit; +} + +/*****----- Listview -----*****/ +listview { + enabled: true; + columns: 1; + lines: 6; + cycle: true; + dynamic: true; + scrollbar: true; + layout: vertical; + reverse: false; + fixed-height: true; + fixed-columns: true; + + spacing: 10px; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; + cursor: "default"; +} +scrollbar { + handle-width: 5px ; + handle-color: @handle-colour; + border-radius: 0px; + background-color: @alternate-background; +} + +/*****----- Elements -----*****/ +element { + enabled: true; + spacing: 10px; + margin: 0px; + padding: 10px; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; + cursor: pointer; +} +element normal.normal { + background-color: var(normal-background); + text-color: var(normal-foreground); +} +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); +} +element selected.normal { + background-color: var(selected-normal-background); + text-color: var(selected-normal-foreground); +} +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); +} +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-icon { + background-color: transparent; + text-color: inherit; + size: 24px; + cursor: inherit; +} +element-text { + background-color: transparent; + text-color: inherit; + highlight: inherit; + cursor: inherit; + vertical-align: 0.5; + horizontal-align: 0.0; +} + +/*****----- Mode Switcher -----*****/ +mode-switcher{ + enabled: true; + spacing: 10px; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; +} +button { + padding: 10px; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + background-color: @alternate-background; + text-color: inherit; + cursor: pointer; +} +button selected { + background-color: var(selected-normal-background); + text-color: var(selected-normal-foreground); +} + +/*****----- Message -----*****/ +message { + enabled: true; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px 0px 0px 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; +} +textbox { + padding: 10px; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + background-color: @alternate-background; + text-color: @foreground-colour; + vertical-align: 0.5; + horizontal-align: 0.0; + highlight: none; + placeholder-color: @foreground-colour; + blink: true; + markup: true; +} +error-message { + padding: 10px; + border: 2px solid; + border-radius: 0px; + border-color: @border-colour; + background-color: @background-colour; + text-color: @foreground-colour; +} diff --git a/.config/hypr/scripts/appLaunch/style-12.rasi b/.config/hypr/scripts/appLaunch/style-12.rasi new file mode 100644 index 0000000..8d30e4a --- /dev/null +++ b/.config/hypr/scripts/appLaunch/style-12.rasi @@ -0,0 +1,325 @@ +/** + * + * Author : Aditya Shakya (adi1090x) + * Github : @adi1090x + * + * Rofi Theme File + * Rofi Version: 1.7.3 + **/ + +/*****----- Configuration -----*****/ +configuration { + modi: "drun,run,filebrowser"; + show-icons: false; + display-drun: " Apps"; + display-run: " Run"; + display-filebrowser: " Files"; + display-window: " Windows"; + drun-display-format: "{name} [({generic})]"; + window-format: "{w} · {c} · {t}"; +} + +/*****----- Global Properties -----*****/ +@import "shared/colors.rasi" +@import "shared/fonts.rasi" + +* { + border-colour: var(selected); + handle-colour: var(selected); + background-colour: var(background); + foreground-colour: var(foreground); + alternate-background: var(background-alt); + normal-background: var(background); + normal-foreground: var(foreground); + urgent-background: var(urgent); + urgent-foreground: var(background); + active-background: var(active); + active-foreground: var(background); + selected-normal-background: var(selected); + selected-normal-foreground: var(background); + selected-urgent-background: var(active); + selected-urgent-foreground: var(background); + selected-active-background: var(urgent); + selected-active-foreground: var(background); + alternate-normal-background: var(background); + alternate-normal-foreground: var(foreground); + alternate-urgent-background: var(urgent); + alternate-urgent-foreground: var(background); + alternate-active-background: var(active); + alternate-active-foreground: var(background); + + /* For Screens with 1920x1080 resolution */ + screen-margin: 310px 400px; + box-spacing: 20px; + element-padding: 15px; + element-radius: 100%; + element-spacing: 15px; + + /* For Screens with 1366x768 resolution */ + /* + screen-margin: 190px 250px; + box-spacing: 20px; + element-padding: 10px; + element-radius: 100%; + element-spacing: 10px; + */ + /* Use this as reference and create for your screen resolution */ +} + +/*****----- Main Window -----*****/ +window { + /* properties for window widget */ + transparency: "real"; + location: center; + anchor: center; + fullscreen: true; + width: 1366px; + height: 768px; + x-offset: 0px; + y-offset: 0px; + + /* properties for all widgets */ + enabled: true; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + cursor: "default"; + /* Backgroud Colors */ + background-color: @background-colour; + /* Backgroud Image */ + //background-image: url("/path/to/image.png", none); + /* Simple Linear Gradient */ + //background-image: linear-gradient(red, orange, pink, purple); + /* Directional Linear Gradient */ + //background-image: linear-gradient(to bottom, pink, yellow, magenta); + /* Angle Linear Gradient */ + //background-image: linear-gradient(45, cyan, purple, indigo); +} + +/*****----- Main Box -----*****/ +mainbox { + enabled: true; + spacing: @box-spacing; + margin: @screen-margin; + padding: 0px; + border: 0px solid; + border-radius: 0px 0px 0px 0px; + border-color: @border-colour; + background-color: transparent; + children: [ "inputbar", "message", "listview", "mode-switcher" ]; +} + +/*****----- Inputbar -----*****/ +inputbar { + enabled: true; + spacing: @element-spacing; + margin: 0px; + padding: @element-padding; + border: 0px solid; + border-radius: @element-radius; + border-color: @border-colour; + background-color: @alternate-background; + text-color: @foreground-colour; + children: [ "prompt", "textbox-prompt-colon", "entry" ]; +} + +prompt { + enabled: true; + background-color: inherit; + text-color: inherit; +} +textbox-prompt-colon { + enabled: true; + expand: false; + str: "::"; + background-color: inherit; + text-color: inherit; +} +entry { + enabled: true; + background-color: inherit; + text-color: inherit; + cursor: text; + placeholder: "Search..."; + placeholder-color: inherit; +} +num-filtered-rows { + enabled: true; + expand: false; + background-color: inherit; + text-color: inherit; +} +textbox-num-sep { + enabled: true; + expand: false; + str: "/"; + background-color: inherit; + text-color: inherit; +} +num-rows { + enabled: true; + expand: false; + background-color: inherit; + text-color: inherit; +} +case-indicator { + enabled: true; + background-color: inherit; + text-color: inherit; +} + +/*****----- Listview -----*****/ +listview { + enabled: true; + columns: 3; + lines: 10; + cycle: true; + dynamic: true; + scrollbar: true; + layout: vertical; + reverse: false; + fixed-height: true; + fixed-columns: true; + + spacing: @box-spacing; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; + cursor: "default"; +} +scrollbar { + handle-width: 10px ; + handle-color: @handle-colour; + border-radius: @element-radius; + background-color: @alternate-background; +} + +/*****----- Elements -----*****/ +element { + enabled: true; + spacing: @element-spacing; + margin: 0px; + padding: @element-padding; + border: 0px solid; + border-radius: @element-radius; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; + cursor: pointer; +} +element normal.normal { + background-color: var(normal-background); + text-color: var(normal-foreground); +} +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); +} +element selected.normal { + background-color: var(selected-normal-background); + text-color: var(selected-normal-foreground); +} +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); +} +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-icon { + background-color: transparent; + text-color: inherit; + size: 24px; + cursor: inherit; +} +element-text { + background-color: transparent; + text-color: inherit; + highlight: inherit; + cursor: inherit; + vertical-align: 0.5; + horizontal-align: 0.0; +} + +/*****----- Mode Switcher -----*****/ +mode-switcher{ + enabled: true; + spacing: @box-spacing; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; +} +button { + padding: @element-padding; + border: 0px solid; + border-radius: @element-radius; + border-color: @border-colour; + background-color: @alternate-background; + text-color: inherit; + cursor: pointer; +} +button selected { + background-color: var(selected-normal-background); + text-color: var(selected-normal-foreground); +} + +/*****----- Message -----*****/ +message { + enabled: true; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px 0px 0px 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; +} +textbox { + padding: @element-padding; + border: 0px solid; + border-radius: @element-radius; + border-color: @border-colour; + background-color: @alternate-background; + text-color: @foreground-colour; + vertical-align: 0.5; + horizontal-align: 0.0; + highlight: none; + placeholder-color: @foreground-colour; + blink: true; + markup: true; +} +error-message { + padding: @element-padding; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + background-color: @background-colour; + text-color: @foreground-colour; +} diff --git a/.config/hypr/scripts/appLaunch/style-13.rasi b/.config/hypr/scripts/appLaunch/style-13.rasi new file mode 100644 index 0000000..1b82aa2 --- /dev/null +++ b/.config/hypr/scripts/appLaunch/style-13.rasi @@ -0,0 +1,325 @@ +/** + * + * Author : Aditya Shakya (adi1090x) + * Github : @adi1090x + * + * Rofi Theme File + * Rofi Version: 1.7.3 + **/ + +/*****----- Configuration -----*****/ +configuration { + modi: "drun,run,filebrowser,window"; + show-icons: false; + display-drun: " Apps"; + display-run: " Run"; + display-filebrowser: " Files"; + display-window: " Windows"; + drun-display-format: "{name} [({generic})]"; + window-format: "{w} · {c} · {t}"; +} + +/*****----- Global Properties -----*****/ +@import "shared/colors.rasi" +@import "shared/fonts.rasi" + +* { + border-colour: var(selected); + handle-colour: var(selected); + background-colour: var(background); + foreground-colour: var(foreground); + alternate-background: var(background-alt); + normal-background: var(background); + normal-foreground: var(foreground); + urgent-background: var(urgent); + urgent-foreground: var(background); + active-background: var(active); + active-foreground: var(background); + selected-normal-background: var(selected); + selected-normal-foreground: var(background); + selected-urgent-background: var(active); + selected-urgent-foreground: var(background); + selected-active-background: var(urgent); + selected-active-foreground: var(background); + alternate-normal-background: var(background); + alternate-normal-foreground: var(foreground); + alternate-urgent-background: var(urgent); + alternate-urgent-foreground: var(background); + alternate-active-background: var(active); + alternate-active-foreground: var(background); + + /* For Screens with 1920x1080 resolution */ + screen-margin: 310px 500px; + box-spacing: 20px; + element-padding: 15px; + element-radius: 8px; + element-spacing: 15px; + + /* For Screens with 1366x768 resolution */ + /* + screen-margin: 190px 350px; + box-spacing: 20px; + element-padding: 10px; + element-radius: 6px; + element-spacing: 10px; + */ + /* Use this as reference and create for your screen resolution */ +} + +/*****----- Main Window -----*****/ +window { + /* properties for window widget */ + transparency: "real"; + location: center; + anchor: center; + fullscreen: true; + width: 1366px; + height: 768px; + x-offset: 0px; + y-offset: 0px; + + /* properties for all widgets */ + enabled: true; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + cursor: "default"; + /* Backgroud Colors */ + background-color: @background-colour; + /* Backgroud Image */ + //background-image: url("/path/to/image.png", none); + /* Simple Linear Gradient */ + //background-image: linear-gradient(red, orange, pink, purple); + /* Directional Linear Gradient */ + //background-image: linear-gradient(to bottom, pink, yellow, magenta); + /* Angle Linear Gradient */ + //background-image: linear-gradient(45, cyan, purple, indigo); +} + +/*****----- Main Box -----*****/ +mainbox { + enabled: true; + spacing: @box-spacing; + margin: @screen-margin; + padding: 0px; + border: 0px solid; + border-radius: 0px 0px 0px 0px; + border-color: @border-colour; + background-color: transparent; + children: [ "inputbar", "message", "listview", "mode-switcher" ]; +} + +/*****----- Inputbar -----*****/ +inputbar { + enabled: true; + spacing: @element-spacing; + margin: 0px; + padding: @element-padding; + border: 0px solid; + border-radius: @element-radius; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; + children: [ "prompt", "textbox-prompt-colon", "entry" ]; +} + +prompt { + enabled: true; + background-color: inherit; + text-color: inherit; +} +textbox-prompt-colon { + enabled: true; + expand: false; + str: ":"; + background-color: inherit; + text-color: inherit; +} +entry { + enabled: true; + background-color: inherit; + text-color: inherit; + cursor: text; + placeholder: "Search..."; + placeholder-color: inherit; +} +num-filtered-rows { + enabled: true; + expand: false; + background-color: inherit; + text-color: inherit; +} +textbox-num-sep { + enabled: true; + expand: false; + str: "/"; + background-color: inherit; + text-color: inherit; +} +num-rows { + enabled: true; + expand: false; + background-color: inherit; + text-color: inherit; +} +case-indicator { + enabled: true; + background-color: inherit; + text-color: inherit; +} + +/*****----- Listview -----*****/ +listview { + enabled: true; + columns: 1; + lines: 10; + cycle: true; + dynamic: true; + scrollbar: true; + layout: vertical; + reverse: false; + fixed-height: true; + fixed-columns: true; + + spacing: @box-spacing; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; + cursor: "default"; +} +scrollbar { + handle-width: 8px ; + handle-color: @handle-colour; + border-radius: @element-radius; + background-color: @alternate-background; +} + +/*****----- Elements -----*****/ +element { + enabled: true; + spacing: @element-spacing; + margin: 0px; + padding: @element-padding; + border: 0px solid; + border-radius: @element-radius; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; + cursor: pointer; +} +element normal.normal { + background-color: var(normal-background); + text-color: var(normal-foreground); +} +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); +} +element selected.normal { + background-color: var(selected-normal-background); + text-color: var(selected-normal-foreground); +} +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); +} +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-icon { + background-color: transparent; + text-color: inherit; + size: 24px; + cursor: inherit; +} +element-text { + background-color: transparent; + text-color: inherit; + highlight: inherit; + cursor: inherit; + vertical-align: 0.5; + horizontal-align: 0.0; +} + +/*****----- Mode Switcher -----*****/ +mode-switcher{ + enabled: true; + spacing: @box-spacing; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; +} +button { + padding: @element-padding; + border: 0px solid; + border-radius: @element-radius; + border-color: @border-colour; + background-color: @alternate-background; + text-color: inherit; + cursor: pointer; +} +button selected { + background-color: var(selected-normal-background); + text-color: var(selected-normal-foreground); +} + +/*****----- Message -----*****/ +message { + enabled: true; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px 0px 0px 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; +} +textbox { + padding: @element-padding; + border: 0px solid; + border-radius: @element-radius; + border-color: @border-colour; + background-color: @alternate-background; + text-color: @foreground-colour; + vertical-align: 0.5; + horizontal-align: 0.0; + highlight: none; + placeholder-color: @foreground-colour; + blink: true; + markup: true; +} +error-message { + padding: @element-padding; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + background-color: @background-colour; + text-color: @foreground-colour; +} diff --git a/.config/hypr/scripts/appLaunch/style-14.rasi b/.config/hypr/scripts/appLaunch/style-14.rasi new file mode 100644 index 0000000..2cbceca --- /dev/null +++ b/.config/hypr/scripts/appLaunch/style-14.rasi @@ -0,0 +1,335 @@ +/** + * + * Author : Aditya Shakya (adi1090x) + * Github : @adi1090x + * + * Rofi Theme File + * Rofi Version: 1.7.3 + **/ + +/*****----- Configuration -----*****/ +configuration { + modi: "drun,run,filebrowser,window"; + show-icons: true; + display-drun: " Apps"; + display-run: " Run"; + display-filebrowser: " Files"; + display-window: " Windows"; + drun-display-format: "{name} [({generic})]"; + window-format: "{w} · {c} · {t}"; +} + +/*****----- Global Properties -----*****/ +@import "shared/colors.rasi" +@import "shared/fonts.rasi" + +* { + border-colour: var(selected); + handle-colour: var(selected); + background-colour: var(background); + foreground-colour: var(foreground); + alternate-background: var(background-alt); + normal-background: var(background); + normal-foreground: var(foreground); + urgent-background: var(urgent); + urgent-foreground: var(background); + active-background: var(active); + active-foreground: var(background); + selected-normal-background: var(selected); + selected-normal-foreground: var(background); + selected-urgent-background: var(active); + selected-urgent-foreground: var(background); + selected-active-background: var(urgent); + selected-active-foreground: var(background); + alternate-normal-background: var(background); + alternate-normal-foreground: var(foreground); + alternate-urgent-background: var(urgent); + alternate-urgent-foreground: var(background); + alternate-active-background: var(active); + alternate-active-foreground: var(background); + + /* For Screens with 1920x1080 resolution */ + screen-margin: 275px 400px; + box-spacing: 20px; + list-padding: 8px; + element-padding: 15px; + element-radius: 8px; + element-spacing: 15px; + + /* For Screens with 1366x768 resolution */ + /* + screen-margin: 120px 225px; + box-spacing: 20px; + list-padding: 4px; + element-padding: 10px; + element-radius: 6px; + element-spacing: 10px; + */ + /* Use this as reference and create for your screen resolution */ +} + +/*****----- Main Window -----*****/ +window { + /* properties for window widget */ + transparency: "real"; + location: center; + anchor: center; + fullscreen: true; + width: 1366px; + height: 768px; + x-offset: 0px; + y-offset: 0px; + + /* properties for all widgets */ + enabled: true; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + cursor: "default"; + /* Backgroud Colors */ + background-color: @background-colour; + /* Backgroud Image */ + //background-image: url("/path/to/image.png", none); + /* Simple Linear Gradient */ + //background-image: linear-gradient(red, orange, pink, purple); + /* Directional Linear Gradient */ + //background-image: linear-gradient(to bottom, pink, yellow, magenta); + /* Angle Linear Gradient */ + //background-image: linear-gradient(45, cyan, purple, indigo); +} + +/*****----- Main Box -----*****/ +mainbox { + enabled: true; + spacing: @box-spacing; + margin: @screen-margin; + padding: 0px; + border: 0px solid; + border-radius: 0px 0px 0px 0px; + border-color: @border-colour; + background-color: transparent; + children: [ "inputbar", "message", "listview" ]; +} + +/*****----- Inputbar -----*****/ +inputbar { + enabled: true; + spacing: 0px; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: @element-radius; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; + children: [ "textbox-prompt-colon", "entry", "mode-switcher" ]; +} + +prompt { + enabled: true; + padding: @element-padding; + background-color: inherit; + text-color: inherit; +} +textbox-prompt-colon { + enabled: true; + expand: false; + padding: @element-padding; + str: ""; + border: 0px solid; + border-radius: @element-radius; + border-color: @border-colour; + background-color: @alternate-background; + text-color: @foreground-colour; +} +entry { + enabled: true; + expand: true; + padding: @element-padding; + background-color: inherit; + text-color: inherit; + cursor: text; + placeholder: "Search..."; + placeholder-color: inherit; +} +num-filtered-rows { + enabled: true; + expand: false; + background-color: inherit; + text-color: inherit; +} +textbox-num-sep { + enabled: true; + expand: false; + str: "/"; + background-color: inherit; + text-color: inherit; +} +num-rows { + enabled: true; + expand: false; + background-color: inherit; + text-color: inherit; +} +case-indicator { + enabled: true; + background-color: inherit; + text-color: inherit; +} + +/*****----- Listview -----*****/ +listview { + enabled: true; + columns: 1; + lines: 10; + cycle: true; + dynamic: true; + scrollbar: true; + layout: vertical; + reverse: false; + fixed-height: true; + fixed-columns: true; + + spacing: @box-spacing; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; + cursor: "default"; +} +scrollbar { + handle-width: 8px ; + handle-color: @handle-colour; + border-radius: @element-radius; + background-color: @alternate-background; +} + +/*****----- Elements -----*****/ +element { + enabled: true; + spacing: @element-spacing; + margin: 0px; + padding: @list-padding; + border: 0px solid; + border-radius: @element-radius; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; + cursor: pointer; +} +element normal.normal { + background-color: var(normal-background); + text-color: var(normal-foreground); +} +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); +} +element selected.normal { + background-color: var(selected-normal-background); + text-color: var(selected-normal-foreground); +} +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); +} +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-icon { + background-color: transparent; + text-color: inherit; + size: 32px; + cursor: inherit; +} +element-text { + background-color: transparent; + text-color: inherit; + highlight: inherit; + cursor: inherit; + vertical-align: 0.5; + horizontal-align: 0.0; +} + +/*****----- Mode Switcher -----*****/ +mode-switcher{ + enabled: true; + spacing: @box-spacing; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; +} +button { + padding: @element-padding; + width: 125px; + border: 0px solid; + border-radius: @element-radius; + border-color: @border-colour; + background-color: @alternate-background; + text-color: inherit; + cursor: pointer; +} +button selected { + background-color: var(selected-normal-background); + text-color: var(selected-normal-foreground); +} + +/*****----- Message -----*****/ +message { + enabled: true; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px 0px 0px 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; +} +textbox { + padding: @element-padding; + border: 0px solid; + border-radius: @element-radius; + border-color: @border-colour; + background-color: @alternate-background; + text-color: @foreground-colour; + vertical-align: 0.5; + horizontal-align: 0.0; + highlight: none; + placeholder-color: @foreground-colour; + blink: true; + markup: true; +} +error-message { + padding: @element-padding; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + background-color: @background-colour; + text-color: @foreground-colour; +} diff --git a/.config/hypr/scripts/appLaunch/style-15.rasi b/.config/hypr/scripts/appLaunch/style-15.rasi new file mode 100644 index 0000000..e443bb6 --- /dev/null +++ b/.config/hypr/scripts/appLaunch/style-15.rasi @@ -0,0 +1,345 @@ +/** + * + * Author : Aditya Shakya (adi1090x) + * Github : @adi1090x + * + * Rofi Theme File + * Rofi Version: 1.7.3 + **/ + +/*****----- Configuration -----*****/ +configuration { + modi: "drun,run,filebrowser,window"; + show-icons: true; + display-drun: " Apps"; + display-run: " Run"; + display-filebrowser: " Files"; + display-window: " Windows"; + drun-display-format: "{name} [({generic})]"; + window-format: "{w} · {c} · {t}"; +} + +/*****----- Global Properties -----*****/ +@import "shared/colors.rasi" +@import "shared/fonts.rasi" + +* { + border-colour: var(selected); + handle-colour: var(selected); + background-colour: var(background); + foreground-colour: var(foreground); + alternate-background: var(background-alt); + normal-background: var(background); + normal-foreground: var(foreground); + urgent-background: var(urgent); + urgent-foreground: var(background); + active-background: var(active); + active-foreground: var(background); + selected-normal-background: var(selected); + selected-normal-foreground: var(background); + selected-urgent-background: var(active); + selected-urgent-foreground: var(background); + selected-active-background: var(urgent); + selected-active-foreground: var(background); + alternate-normal-background: var(background); + alternate-normal-foreground: var(foreground); + alternate-urgent-background: var(urgent); + alternate-urgent-foreground: var(background); + alternate-active-background: var(active); + alternate-active-foreground: var(background); + + /* For Screens with 1920x1080 resolution */ + screen-margin: 275px 400px; + box-spacing: 20px; + list-padding: 8px; + element-padding: 15px; + element-radius: 8px; + element-spacing: 15px; + + /* For Screens with 1366x768 resolution */ + /* + screen-margin: 180px 225px; + box-spacing: 20px; + list-padding: 4px; + element-padding: 10px; + element-radius: 6px; + element-spacing: 10px; + */ + /* Use this as reference and create for your screen resolution */ +} + +/*****----- Main Window -----*****/ +window { + /* properties for window widget */ + transparency: "real"; + location: center; + anchor: center; + fullscreen: true; + width: 1366px; + height: 768px; + x-offset: 0px; + y-offset: 0px; + + /* properties for all widgets */ + enabled: true; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + cursor: "default"; + /* Backgroud Colors */ + background-color: @background-colour; + /* Backgroud Image */ + //background-image: url("/path/to/image.png", none); + /* Simple Linear Gradient */ + //background-image: linear-gradient(red, orange, pink, purple); + /* Directional Linear Gradient */ + //background-image: linear-gradient(to bottom, pink, yellow, magenta); + /* Angle Linear Gradient */ + //background-image: linear-gradient(45, cyan, purple, indigo); +} + +/*****----- Main Box -----*****/ +mainbox { + enabled: true; + spacing: @box-spacing; + margin: @screen-margin; + padding: 0px; + border: 0px solid; + border-radius: 0px 0px 0px 0px; + border-color: @border-colour; + background-color: transparent; + children: [ "inputbar", "message", "custombox" ]; +} + +/*****----- A Custom Box -----*****/ +custombox { + spacing: @box-spacing; + background-color: @background-colour; + text-color: @foreground-colour; + orientation: horizontal; + children: [ "mode-switcher", "listview" ]; +} + +/*****----- Inputbar -----*****/ +inputbar { + enabled: true; + spacing: 0px; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: @element-radius; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; + children: [ "textbox-prompt-colon", "entry" ]; +} + +prompt { + enabled: true; + padding: @element-padding; + background-color: inherit; + text-color: inherit; +} +textbox-prompt-colon { + enabled: true; + expand: false; + padding: @element-padding; + str: ""; + border: 0px solid; + border-radius: @element-radius; + border-color: @border-colour; + background-color: @alternate-background; + text-color: @foreground-colour; +} +entry { + enabled: true; + expand: true; + padding: @element-padding; + background-color: inherit; + text-color: inherit; + cursor: text; + placeholder: "Search..."; + placeholder-color: inherit; +} +num-filtered-rows { + enabled: true; + expand: false; + background-color: inherit; + text-color: inherit; +} +textbox-num-sep { + enabled: true; + expand: false; + str: "/"; + background-color: inherit; + text-color: inherit; +} +num-rows { + enabled: true; + expand: false; + background-color: inherit; + text-color: inherit; +} +case-indicator { + enabled: true; + background-color: inherit; + text-color: inherit; +} + +/*****----- Listview -----*****/ +listview { + enabled: true; + columns: 1; + lines: 10; + cycle: true; + dynamic: true; + scrollbar: true; + layout: vertical; + reverse: false; + fixed-height: true; + fixed-columns: true; + + spacing: @box-spacing; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; + cursor: "default"; +} +scrollbar { + handle-width: 8px ; + handle-color: @handle-colour; + border-radius: @element-radius; + background-color: @alternate-background; +} + +/*****----- Elements -----*****/ +element { + enabled: true; + spacing: @element-spacing; + margin: 0px; + padding: @list-padding; + border: 0px solid; + border-radius: @element-radius; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; + cursor: pointer; +} +element normal.normal { + background-color: var(normal-background); + text-color: var(normal-foreground); +} +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); +} +element selected.normal { + background-color: var(selected-normal-background); + text-color: var(selected-normal-foreground); +} +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); +} +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-icon { + background-color: transparent; + text-color: inherit; + size: 32px; + cursor: inherit; +} +element-text { + background-color: transparent; + text-color: inherit; + highlight: inherit; + cursor: inherit; + vertical-align: 0.5; + horizontal-align: 0.0; +} + +/*****----- Mode Switcher -----*****/ +mode-switcher{ + enabled: true; + orientation: vertical; + spacing: @box-spacing; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; +} +button { + padding: @element-padding; + width: 125px; + border: 0px solid; + border-radius: @element-radius; + border-color: @border-colour; + background-color: @alternate-background; + text-color: inherit; + cursor: pointer; +} +button selected { + background-color: var(selected-normal-background); + text-color: var(selected-normal-foreground); +} + +/*****----- Message -----*****/ +message { + enabled: true; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px 0px 0px 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; +} +textbox { + padding: @element-padding; + border: 0px solid; + border-radius: @element-radius; + border-color: @border-colour; + background-color: @alternate-background; + text-color: @foreground-colour; + vertical-align: 0.5; + horizontal-align: 0.0; + highlight: none; + placeholder-color: @foreground-colour; + blink: true; + markup: true; +} +error-message { + padding: @element-padding; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + background-color: @background-colour; + text-color: @foreground-colour; +} diff --git a/.config/hypr/scripts/appLaunch/style-2.rasi b/.config/hypr/scripts/appLaunch/style-2.rasi new file mode 100644 index 0000000..6f99d10 --- /dev/null +++ b/.config/hypr/scripts/appLaunch/style-2.rasi @@ -0,0 +1,307 @@ +/** + * + * Author : Aditya Shakya (adi1090x) + * Github : @adi1090x + * + * Rofi Theme File + * Rofi Version: 1.7.3 + **/ + +/*****----- Configuration -----*****/ +configuration { + modi: "drun,run,filebrowser,window"; + show-icons: false; + display-drun: ""; + display-run: ""; + display-filebrowser: ""; + display-window: ""; + drun-display-format: "{name} [({generic})]"; + window-format: "{w} · {c} · {t}"; +} + +/*****----- Global Properties -----*****/ +@import "shared/colors.rasi" +@import "shared/fonts.rasi" + +* { + border-colour: var(selected); + handle-colour: var(foreground); + background-colour: var(background); + foreground-colour: var(foreground); + alternate-background: var(background-alt); + normal-background: var(background); + normal-foreground: var(foreground); + urgent-background: var(urgent); + urgent-foreground: var(background); + active-background: var(active); + active-foreground: var(background); + selected-normal-background: var(selected); + selected-normal-foreground: var(background); + selected-urgent-background: var(active); + selected-urgent-foreground: var(background); + selected-active-background: var(urgent); + selected-active-foreground: var(background); + alternate-normal-background: var(background); + alternate-normal-foreground: var(foreground); + alternate-urgent-background: var(urgent); + alternate-urgent-foreground: var(background); + alternate-active-background: var(active); + alternate-active-foreground: var(background); +} + +/*****----- Main Window -----*****/ +window { + /* properties for window widget */ + transparency: "real"; + location: center; + anchor: center; + fullscreen: false; + width: 400px; + x-offset: 0px; + y-offset: 0px; + + /* properties for all widgets */ + enabled: true; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 8px; + border-color: @border-colour; + cursor: "default"; + /* Backgroud Colors */ + background-color: @background-colour; + /* Backgroud Image */ + //background-image: url("/path/to/image.png", none); + /* Simple Linear Gradient */ + //background-image: linear-gradient(red, orange, pink, purple); + /* Directional Linear Gradient */ + //background-image: linear-gradient(to bottom, pink, yellow, magenta); + /* Angle Linear Gradient */ + //background-image: linear-gradient(45, cyan, purple, indigo); +} + +/*****----- Main Box -----*****/ +mainbox { + enabled: true; + spacing: 10px; + margin: 0px; + padding: 40px; + border: 0px solid; + border-radius: 0px 0px 0px 0px; + border-color: @border-colour; + background-color: transparent; + children: [ "inputbar", "message", "listview", "mode-switcher" ]; +} + +/*****----- Inputbar -----*****/ +inputbar { + enabled: true; + spacing: 10px; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; + children: [ "prompt", "entry" ]; +} + +prompt { + enabled: true; + background-color: inherit; + text-color: inherit; +} +textbox-prompt-colon { + enabled: true; + expand: false; + str: "::"; + background-color: inherit; + text-color: inherit; +} +entry { + enabled: true; + background-color: inherit; + text-color: inherit; + cursor: text; + placeholder: "search..."; + placeholder-color: inherit; +} +num-filtered-rows { + enabled: true; + expand: false; + background-color: inherit; + text-color: inherit; +} +textbox-num-sep { + enabled: true; + expand: false; + str: "/"; + background-color: inherit; + text-color: inherit; +} +num-rows { + enabled: true; + expand: false; + background-color: inherit; + text-color: inherit; +} +case-indicator { + enabled: true; + background-color: inherit; + text-color: inherit; +} + +/*****----- Listview -----*****/ +listview { + enabled: true; + columns: 1; + lines: 12; + cycle: true; + dynamic: true; + scrollbar: true; + layout: vertical; + reverse: false; + fixed-height: true; + fixed-columns: true; + + spacing: 5px; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; + cursor: "default"; +} +scrollbar { + handle-width: 5px ; + handle-color: @handle-colour; + border-radius: 8px; + background-color: @alternate-background; +} + +/*****----- Elements -----*****/ +element { + enabled: true; + spacing: 8px; + margin: 0px; + padding: 8px; + border: 0px solid; + border-radius: 4px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; + cursor: pointer; +} +element normal.normal { + background-color: var(normal-background); + text-color: var(normal-foreground); +} +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); +} +element selected.normal { + background-color: var(normal-foreground); + text-color: var(normal-background); +} +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); +} +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-icon { + background-color: transparent; + text-color: inherit; + size: 24px; + cursor: inherit; +} +element-text { + background-color: transparent; + text-color: inherit; + highlight: inherit; + cursor: inherit; + vertical-align: 0.5; + horizontal-align: 0.0; +} + +/*****----- Mode Switcher -----*****/ +mode-switcher{ + enabled: true; + spacing: 10px; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; +} +button { + padding: 8px; + border: 0px solid; + border-radius: 4px; + border-color: @border-colour; + background-color: @alternate-background; + text-color: inherit; + cursor: pointer; +} +button selected { + background-color: var(selected-normal-background); + text-color: var(selected-normal-foreground); +} + +/*****----- Message -----*****/ +message { + enabled: true; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px 0px 0px 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; +} +textbox { + padding: 8px; + border: 0px solid; + border-radius: 4px; + border-color: @border-colour; + background-color: @alternate-background; + text-color: @foreground-colour; + vertical-align: 0.5; + horizontal-align: 0.0; + highlight: none; + placeholder-color: @foreground-colour; + blink: true; + markup: true; +} +error-message { + padding: 10px; + border: 0px solid; + border-radius: 4px; + border-color: @border-colour; + background-color: @background-colour; + text-color: @foreground-colour; +} diff --git a/.config/hypr/scripts/appLaunch/style-3.rasi b/.config/hypr/scripts/appLaunch/style-3.rasi new file mode 100644 index 0000000..156e039 --- /dev/null +++ b/.config/hypr/scripts/appLaunch/style-3.rasi @@ -0,0 +1,307 @@ +/** + * + * Author : Aditya Shakya (adi1090x) + * Github : @adi1090x + * + * Rofi Theme File + * Rofi Version: 1.7.3 + **/ + +/*****----- Configuration -----*****/ +configuration { + modi: "drun,run"; + show-icons: false; + display-drun: ""; + display-run: ""; + display-filebrowser: ""; + display-window: ""; + drun-display-format: "{name}"; + window-format: "{w} · {c} · {t}"; +} + +/*****----- Global Properties -----*****/ +@import "shared/colors.rasi" +@import "shared/fonts.rasi" + +* { + border-colour: var(selected); + handle-colour: var(foreground); + background-colour: var(background); + foreground-colour: var(foreground); + alternate-background: var(background-alt); + normal-background: var(background); + normal-foreground: var(foreground); + urgent-background: var(urgent); + urgent-foreground: var(background); + active-background: var(active); + active-foreground: var(background); + selected-normal-background: var(selected); + selected-normal-foreground: var(background); + selected-urgent-background: var(active); + selected-urgent-foreground: var(background); + selected-active-background: var(urgent); + selected-active-foreground: var(background); + alternate-normal-background: var(background); + alternate-normal-foreground: var(foreground); + alternate-urgent-background: var(urgent); + alternate-urgent-foreground: var(background); + alternate-active-background: var(active); + alternate-active-foreground: var(background); +} + +/*****----- Main Window -----*****/ +window { + /* properties for window widget */ + transparency: "real"; + location: center; + anchor: center; + fullscreen: false; + width: 400px; + x-offset: 0px; + y-offset: 0px; + + /* properties for all widgets */ + enabled: true; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 8px; + border-color: @border-colour; + cursor: "default"; + /* Backgroud Colors */ + background-color: @background-colour; + /* Backgroud Image */ + //background-image: url("/path/to/image.png", none); + /* Simple Linear Gradient */ + //background-image: linear-gradient(red, orange, pink, purple); + /* Directional Linear Gradient */ + //background-image: linear-gradient(to bottom, pink, yellow, magenta); + /* Angle Linear Gradient */ + //background-image: linear-gradient(45, cyan, purple, indigo); +} + +/*****----- Main Box -----*****/ +mainbox { + enabled: true; + spacing: 10px; + margin: 0px; + padding: 30px; + border: 0px solid; + border-radius: 0px 0px 0px 0px; + border-color: @border-colour; + background-color: transparent; + children: [ "inputbar", "message", "listview", "mode-switcher" ]; +} + +/*****----- Inputbar -----*****/ +inputbar { + enabled: true; + spacing: 10px; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; + children: [ "prompt", "entry" ]; +} + +prompt { + enabled: true; + background-color: inherit; + text-color: inherit; +} +textbox-prompt-colon { + enabled: true; + expand: false; + str: "::"; + background-color: inherit; + text-color: inherit; +} +entry { + enabled: true; + background-color: inherit; + text-color: inherit; + cursor: text; + placeholder: "search..."; + placeholder-color: inherit; +} +num-filtered-rows { + enabled: true; + expand: false; + background-color: inherit; + text-color: inherit; +} +textbox-num-sep { + enabled: true; + expand: false; + str: "/"; + background-color: inherit; + text-color: inherit; +} +num-rows { + enabled: true; + expand: false; + background-color: inherit; + text-color: inherit; +} +case-indicator { + enabled: true; + background-color: inherit; + text-color: inherit; +} + +/*****----- Listview -----*****/ +listview { + enabled: true; + columns: 1; + lines: 6; + cycle: true; + dynamic: true; + scrollbar: false; + layout: vertical; + reverse: false; + fixed-height: true; + fixed-columns: true; + + spacing: 5px; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; + cursor: "default"; +} +scrollbar { + handle-width: 5px ; + handle-color: @handle-colour; + border-radius: 8px; + background-color: @alternate-background; +} + +/*****----- Elements -----*****/ +element { + enabled: true; + spacing: 8px; + margin: 0px; + padding: 8px; + border: 0px solid; + border-radius: 4px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; + cursor: pointer; +} +element normal.normal { + background-color: var(normal-background); + text-color: var(normal-foreground); +} +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); +} +element selected.normal { + background-color: var(normal-foreground); + text-color: var(normal-background); +} +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); +} +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-icon { + background-color: transparent; + text-color: inherit; + size: 24px; + cursor: inherit; +} +element-text { + background-color: transparent; + text-color: inherit; + highlight: inherit; + cursor: inherit; + vertical-align: 0.5; + horizontal-align: 0.0; +} + +/*****----- Mode Switcher -----*****/ +mode-switcher{ + enabled: true; + spacing: 10px; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; +} +button { + padding: 8px; + border: 0px solid; + border-radius: 4px; + border-color: @border-colour; + background-color: @alternate-background; + text-color: inherit; + cursor: pointer; +} +button selected { + background-color: var(normal-foreground); + text-color: var(normal-background); +} + +/*****----- Message -----*****/ +message { + enabled: true; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px 0px 0px 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; +} +textbox { + padding: 8px; + border: 0px solid; + border-radius: 4px; + border-color: @border-colour; + background-color: @alternate-background; + text-color: @foreground-colour; + vertical-align: 0.5; + horizontal-align: 0.0; + highlight: none; + placeholder-color: @foreground-colour; + blink: true; + markup: true; +} +error-message { + padding: 10px; + border: 0px solid; + border-radius: 4px; + border-color: @border-colour; + background-color: @background-colour; + text-color: @foreground-colour; +} diff --git a/.config/hypr/scripts/appLaunch/style-4.rasi b/.config/hypr/scripts/appLaunch/style-4.rasi new file mode 100644 index 0000000..3e41328 --- /dev/null +++ b/.config/hypr/scripts/appLaunch/style-4.rasi @@ -0,0 +1,308 @@ +/** + * + * Author : Aditya Shakya (adi1090x) + * Github : @adi1090x + * + * Rofi Theme File + * Rofi Version: 1.7.3 + **/ + +/*****----- Configuration -----*****/ +configuration { + modi: "drun,run,filebrowser"; + show-icons: false; + display-drun: ""; + display-run: ""; + display-filebrowser: ""; + display-window: ""; + drun-display-format: "{name}"; + window-format: "{w} · {c} · {t}"; +} + +/*****----- Global Properties -----*****/ +@import "shared/colors.rasi" +@import "shared/fonts.rasi" + +* { + border-colour: var(selected); + handle-colour: var(foreground); + background-colour: var(background); + foreground-colour: var(foreground); + alternate-background: var(background-alt); + normal-background: var(background); + normal-foreground: var(foreground); + urgent-background: var(urgent); + urgent-foreground: var(background); + active-background: var(active); + active-foreground: var(background); + selected-normal-background: var(selected); + selected-normal-foreground: var(background); + selected-urgent-background: var(active); + selected-urgent-foreground: var(background); + selected-active-background: var(urgent); + selected-active-foreground: var(background); + alternate-normal-background: var(background); + alternate-normal-foreground: var(foreground); + alternate-urgent-background: var(urgent); + alternate-urgent-foreground: var(background); + alternate-active-background: var(active); + alternate-active-foreground: var(background); +} + +/*****----- Main Window -----*****/ +window { + /* properties for window widget */ + transparency: "real"; + location: west; + anchor: west; + fullscreen: false; + width: 450px; + height: 100%; + x-offset: 0px; + y-offset: 0px; + + /* properties for all widgets */ + enabled: true; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + cursor: "default"; + /* Backgroud Colors */ + background-color: @background-colour; + /* Backgroud Image */ + //background-image: url("/path/to/image.png", none); + /* Simple Linear Gradient */ + //background-image: linear-gradient(red, orange, pink, purple); + /* Directional Linear Gradient */ + //background-image: linear-gradient(to bottom, pink, yellow, magenta); + /* Angle Linear Gradient */ + //background-image: linear-gradient(45, cyan, purple, indigo); +} + +/*****----- Main Box -----*****/ +mainbox { + enabled: true; + spacing: 20px; + margin: 0px; + padding: 40px; + border: 0px solid; + border-radius: 0px 0px 0px 0px; + border-color: @border-colour; + background-color: transparent; + children: [ "inputbar", "message", "listview", "mode-switcher" ]; +} + +/*****----- Inputbar -----*****/ +inputbar { + enabled: true; + spacing: 10px; + margin: 0px; + padding: 8px; + border: 0px solid; + border-radius: 4px; + border-color: @border-colour; + background-color: @alternate-background; + text-color: @foreground-colour; + children: [ "prompt", "entry" ]; +} + +prompt { + enabled: true; + background-color: inherit; + text-color: inherit; +} +textbox-prompt-colon { + enabled: true; + expand: false; + str: "::"; + background-color: inherit; + text-color: inherit; +} +entry { + enabled: true; + background-color: inherit; + text-color: inherit; + cursor: text; + placeholder: "search..."; + placeholder-color: inherit; +} +num-filtered-rows { + enabled: true; + expand: false; + background-color: inherit; + text-color: inherit; +} +textbox-num-sep { + enabled: true; + expand: false; + str: "/"; + background-color: inherit; + text-color: inherit; +} +num-rows { + enabled: true; + expand: false; + background-color: inherit; + text-color: inherit; +} +case-indicator { + enabled: true; + background-color: inherit; + text-color: inherit; +} + +/*****----- Listview -----*****/ +listview { + enabled: true; + columns: 1; + lines: 10; + cycle: true; + dynamic: true; + scrollbar: false; + layout: vertical; + reverse: false; + fixed-height: true; + fixed-columns: true; + + spacing: 5px; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; + cursor: "default"; +} +scrollbar { + handle-width: 5px ; + handle-color: @handle-colour; + border-radius: 8px; + background-color: @alternate-background; +} + +/*****----- Elements -----*****/ +element { + enabled: true; + spacing: 8px; + margin: 0px; + padding: 8px; + border: 0px solid; + border-radius: 4px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; + cursor: pointer; +} +element normal.normal { + background-color: var(normal-background); + text-color: var(normal-foreground); +} +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); +} +element selected.normal { + background-color: var(normal-foreground); + text-color: var(normal-background); +} +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); +} +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-icon { + background-color: transparent; + text-color: inherit; + size: 24px; + cursor: inherit; +} +element-text { + background-color: transparent; + text-color: inherit; + highlight: inherit; + cursor: inherit; + vertical-align: 0.5; + horizontal-align: 0.0; +} + +/*****----- Mode Switcher -----*****/ +mode-switcher{ + enabled: true; + spacing: 10px; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 4px; + border-color: @border-colour; + background-color: @alternate-background; + text-color: @foreground-colour; +} +button { + padding: 8px; + border: 0px solid; + border-radius: 4px; + border-color: @border-colour; + background-color: transparent; + text-color: inherit; + cursor: pointer; +} +button selected { + background-color: var(normal-foreground); + text-color: var(normal-background); +} + +/*****----- Message -----*****/ +message { + enabled: true; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px 0px 0px 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; +} +textbox { + padding: 8px; + border: 0px solid; + border-radius: 4px; + border-color: @border-colour; + background-color: @alternate-background; + text-color: @foreground-colour; + vertical-align: 0.5; + horizontal-align: 0.0; + highlight: none; + placeholder-color: @foreground-colour; + blink: true; + markup: true; +} +error-message { + padding: 10px; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + background-color: @background-colour; + text-color: @foreground-colour; +} diff --git a/.config/hypr/scripts/appLaunch/style-5.rasi b/.config/hypr/scripts/appLaunch/style-5.rasi new file mode 100644 index 0000000..4e88e83 --- /dev/null +++ b/.config/hypr/scripts/appLaunch/style-5.rasi @@ -0,0 +1,309 @@ +/** + * + * Author : Aditya Shakya (adi1090x) + * Github : @adi1090x + * + * Rofi Theme File + * Rofi Version: 1.7.3 + **/ + +/*****----- Configuration -----*****/ +configuration { + modi: "drun,run,filebrowser,window"; + show-icons: true; + display-drun: ""; + display-run: ""; + display-filebrowser: ""; + display-window: ""; + drun-display-format: "{name}"; + window-format: "{w} · {c} · {t}"; +} + +/*****----- Global Properties -----*****/ +@import "shared/colors.rasi" +@import "shared/fonts.rasi" + +* { + border-colour: var(selected); + handle-colour: var(selected); + background-colour: var(background); + foreground-colour: var(foreground); + alternate-background: var(background-alt); + normal-background: var(background); + normal-foreground: var(foreground); + urgent-background: var(urgent); + urgent-foreground: var(background); + active-background: var(active); + active-foreground: var(background); + selected-normal-background: var(selected); + selected-normal-foreground: var(background); + selected-urgent-background: var(active); + selected-urgent-foreground: var(background); + selected-active-background: var(urgent); + selected-active-foreground: var(background); + alternate-normal-background: var(background); + alternate-normal-foreground: var(foreground); + alternate-urgent-background: var(urgent); + alternate-urgent-foreground: var(background); + alternate-active-background: var(active); + alternate-active-foreground: var(background); +} + +/*****----- Main Window -----*****/ +window { + /* properties for window widget */ + transparency: "real"; + location: center; + anchor: center; + fullscreen: false; + width: 600px; + x-offset: 0px; + y-offset: 0px; + + /* properties for all widgets */ + enabled: true; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 10px; + border-color: @border-colour; + cursor: "default"; + /* Backgroud Colors */ + background-color: @background-colour; + /* Backgroud Image */ + //background-image: url("/path/to/image.png", none); + /* Simple Linear Gradient */ + //background-image: linear-gradient(red, orange, pink, purple); + /* Directional Linear Gradient */ + //background-image: linear-gradient(to bottom, pink, yellow, magenta); + /* Angle Linear Gradient */ + //background-image: linear-gradient(45, cyan, purple, indigo); +} + +/*****----- Main Box -----*****/ +mainbox { + enabled: true; + spacing: 10px; + margin: 0px; + padding: 30px; + border: 0px solid; + border-radius: 0px 0px 0px 0px; + border-color: @border-colour; + background-color: transparent; + children: [ "inputbar", "message", "listview" ]; +} + +/*****----- Inputbar -----*****/ +inputbar { + enabled: true; + spacing: 10px; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; + children: [ "textbox-prompt-colon", "entry", "mode-switcher" ]; +} + +prompt { + enabled: true; + background-color: inherit; + text-color: inherit; +} +textbox-prompt-colon { + enabled: true; + padding: 5px 0px; + expand: false; + str: ""; + background-color: inherit; + text-color: inherit; +} +entry { + enabled: true; + padding: 5px 0px; + background-color: inherit; + text-color: inherit; + cursor: text; + placeholder: "Search..."; + placeholder-color: inherit; +} +num-filtered-rows { + enabled: true; + expand: false; + background-color: inherit; + text-color: inherit; +} +textbox-num-sep { + enabled: true; + expand: false; + str: "/"; + background-color: inherit; + text-color: inherit; +} +num-rows { + enabled: true; + expand: false; + background-color: inherit; + text-color: inherit; +} +case-indicator { + enabled: true; + background-color: inherit; + text-color: inherit; +} + +/*****----- Listview -----*****/ +listview { + enabled: true; + columns: 1; + lines: 8; + cycle: true; + dynamic: true; + scrollbar: true; + layout: vertical; + reverse: false; + fixed-height: true; + fixed-columns: true; + + spacing: 5px; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; + cursor: "default"; +} +scrollbar { + handle-width: 5px ; + handle-color: @handle-colour; + border-radius: 10px; + background-color: @alternate-background; +} + +/*****----- Elements -----*****/ +element { + enabled: true; + spacing: 10px; + margin: 0px; + padding: 5px 10px; + border: 0px solid; + border-radius: 10px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; + cursor: pointer; +} +element normal.normal { + background-color: var(normal-background); + text-color: var(normal-foreground); +} +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); +} +element selected.normal { + background-color: var(selected-normal-background); + text-color: var(selected-normal-foreground); +} +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); +} +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-icon { + background-color: transparent; + text-color: inherit; + size: 24px; + cursor: inherit; +} +element-text { + background-color: transparent; + text-color: inherit; + highlight: inherit; + cursor: inherit; + vertical-align: 0.5; + horizontal-align: 0.0; +} + +/*****----- Mode Switcher -----*****/ +mode-switcher{ + enabled: true; + spacing: 10px; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; +} +button { + padding: 5px 10px; + border: 0px solid; + border-radius: 10px; + border-color: @border-colour; + background-color: @alternate-background; + text-color: inherit; + cursor: pointer; +} +button selected { + background-color: var(selected-normal-background); + text-color: var(selected-normal-foreground); +} + +/*****----- Message -----*****/ +message { + enabled: true; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px 0px 0px 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; +} +textbox { + padding: 8px 10px; + border: 0px solid; + border-radius: 10px; + border-color: @border-colour; + background-color: @alternate-background; + text-color: @foreground-colour; + vertical-align: 0.5; + horizontal-align: 0.0; + highlight: none; + placeholder-color: @foreground-colour; + blink: true; + markup: true; +} +error-message { + padding: 10px; + border: 2px solid; + border-radius: 10px; + border-color: @border-colour; + background-color: @background-colour; + text-color: @foreground-colour; +} diff --git a/.config/hypr/scripts/appLaunch/style-6.rasi b/.config/hypr/scripts/appLaunch/style-6.rasi new file mode 100644 index 0000000..51178bf --- /dev/null +++ b/.config/hypr/scripts/appLaunch/style-6.rasi @@ -0,0 +1,310 @@ +/** + * + * Author : Aditya Shakya (adi1090x) + * Github : @adi1090x + * + * Rofi Theme File + * Rofi Version: 1.7.3 + **/ + +/*****----- Configuration -----*****/ +configuration { + modi: "drun,run,filebrowser,window"; + show-icons: true; + display-drun: " Apps"; + display-run: " Run"; + display-filebrowser: " Files"; + display-window: " Windows"; + drun-display-format: "{name}"; + window-format: "{w} · {c} · {t}"; +} + +/*****----- Global Properties -----*****/ +@import "shared/colors.rasi" +@import "shared/fonts.rasi" + +* { + border-colour: var(selected); + handle-colour: var(selected); + background-colour: var(background); + foreground-colour: var(foreground); + alternate-background: var(background-alt); + normal-background: var(background); + normal-foreground: var(foreground); + urgent-background: var(urgent); + urgent-foreground: var(background); + active-background: var(active); + active-foreground: var(background); + selected-normal-background: var(selected); + selected-normal-foreground: var(background); + selected-urgent-background: var(active); + selected-urgent-foreground: var(background); + selected-active-background: var(urgent); + selected-active-foreground: var(background); + alternate-normal-background: var(background); + alternate-normal-foreground: var(foreground); + alternate-urgent-background: var(urgent); + alternate-urgent-foreground: var(background); + alternate-active-background: var(active); + alternate-active-foreground: var(background); +} + +/*****----- Main Window -----*****/ +window { + /* properties for window widget */ + transparency: "real"; + location: center; + anchor: center; + fullscreen: false; + width: 800px; + x-offset: 0px; + y-offset: 0px; + + /* properties for all widgets */ + enabled: true; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 10px; + border-color: @border-colour; + cursor: "default"; + /* Backgroud Colors */ + background-color: @background-colour; + /* Backgroud Image */ + //background-image: url("/path/to/image.png", none); + /* Simple Linear Gradient */ + //background-image: linear-gradient(red, orange, pink, purple); + /* Directional Linear Gradient */ + //background-image: linear-gradient(to bottom, pink, yellow, magenta); + /* Angle Linear Gradient */ + //background-image: linear-gradient(45, cyan, purple, indigo); +} + +/*****----- Main Box -----*****/ +mainbox { + enabled: true; + spacing: 10px; + margin: 0px; + padding: 20px; + border: 0px solid; + border-radius: 0px 0px 0px 0px; + border-color: @border-colour; + background-color: transparent; + children: [ "inputbar", "mode-switcher", "message", "listview" ]; +} + +/*****----- Inputbar -----*****/ +inputbar { + enabled: true; + spacing: 10px; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; + children: [ "textbox-prompt-colon", "entry" ]; +} + +prompt { + enabled: true; + background-color: inherit; + text-color: inherit; +} +textbox-prompt-colon { + enabled: true; + padding: 5px 0px; + expand: false; + str: ""; + background-color: inherit; + text-color: inherit; +} +entry { + enabled: true; + padding: 5px 0px; + background-color: inherit; + text-color: inherit; + cursor: text; + placeholder: "Search..."; + placeholder-color: inherit; +} +num-filtered-rows { + enabled: true; + expand: false; + background-color: inherit; + text-color: inherit; +} +textbox-num-sep { + enabled: true; + expand: false; + str: "/"; + background-color: inherit; + text-color: inherit; +} +num-rows { + enabled: true; + expand: false; + background-color: inherit; + text-color: inherit; +} +case-indicator { + enabled: true; + background-color: inherit; + text-color: inherit; +} + +/*****----- Listview -----*****/ +listview { + enabled: true; + columns: 1; + lines: 8; + cycle: true; + dynamic: true; + scrollbar: false; + layout: vertical; + reverse: false; + fixed-height: true; + fixed-columns: true; + + spacing: 5px; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; + cursor: "default"; +} +scrollbar { + handle-width: 5px ; + handle-color: @handle-colour; + border-radius: 10px; + background-color: @alternate-background; +} + +/*****----- Elements -----*****/ +element { + enabled: true; + spacing: 10px; + margin: 0px; + padding: 10px; + border: 0px solid; + border-radius: 8px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; + cursor: pointer; +} +element normal.normal { + background-color: var(normal-background); + text-color: var(normal-foreground); +} +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); +} +element selected.normal { + background-color: var(selected-normal-background); + text-color: var(selected-normal-foreground); +} +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); +} +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-icon { + background-color: transparent; + text-color: inherit; + size: 24px; + cursor: inherit; +} +element-text { + background-color: transparent; + text-color: inherit; + highlight: inherit; + cursor: inherit; + vertical-align: 0.5; + horizontal-align: 0.0; +} + +/*****----- Mode Switcher -----*****/ +mode-switcher{ + enabled: true; + expand: false; + spacing: 10px; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; +} +button { + padding: 12px; + border: 0px solid; + border-radius: 8px; + border-color: @border-colour; + background-color: @alternate-background; + text-color: inherit; + cursor: pointer; +} +button selected { + background-color: var(selected-normal-background); + text-color: var(selected-normal-foreground); +} + +/*****----- Message -----*****/ +message { + enabled: true; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px 0px 0px 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; +} +textbox { + padding: 12px; + border: 0px solid; + border-radius: 8px; + border-color: @border-colour; + background-color: @alternate-background; + text-color: @foreground-colour; + vertical-align: 0.5; + horizontal-align: 0.0; + highlight: none; + placeholder-color: @foreground-colour; + blink: true; + markup: true; +} +error-message { + padding: 0px; + border: 2px solid; + border-radius: 8px; + border-color: @border-colour; + background-color: @background-colour; + text-color: @foreground-colour; +} diff --git a/.config/hypr/scripts/appLaunch/style-7.rasi b/.config/hypr/scripts/appLaunch/style-7.rasi new file mode 100644 index 0000000..6f8ef84 --- /dev/null +++ b/.config/hypr/scripts/appLaunch/style-7.rasi @@ -0,0 +1,313 @@ +/** + * + * Author : Aditya Shakya (adi1090x) + * Github : @adi1090x + * + * Rofi Theme File + * Rofi Version: 1.7.3 + **/ + +/*****----- Configuration -----*****/ +configuration { + modi: "drun,run,filebrowser,window"; + show-icons: true; + display-drun: " Apps"; + display-run: " Run"; + display-filebrowser: " Files"; + display-window: " Windows"; + drun-display-format: "{name}"; + window-format: "{w} · {c} · {t}"; +} + +/*****----- Global Properties -----*****/ +@import "shared/colors.rasi" +@import "shared/fonts.rasi" + +* { + border-colour: var(selected); + handle-colour: var(selected); + background-colour: var(background); + foreground-colour: var(foreground); + alternate-background: var(background-alt); + normal-background: var(background); + normal-foreground: var(foreground); + urgent-background: var(urgent); + urgent-foreground: var(background); + active-background: var(active); + active-foreground: var(background); + selected-normal-background: var(selected); + selected-normal-foreground: var(background); + selected-urgent-background: var(active); + selected-urgent-foreground: var(background); + selected-active-background: var(urgent); + selected-active-foreground: var(background); + alternate-normal-background: var(background); + alternate-normal-foreground: var(foreground); + alternate-urgent-background: var(urgent); + alternate-urgent-foreground: var(background); + alternate-active-background: var(active); + alternate-active-foreground: var(background); +} + +/*****----- Main Window -----*****/ +window { + /* properties for window widget */ + transparency: "real"; + location: center; + anchor: center; + fullscreen: false; + width: 800px; + x-offset: 0px; + y-offset: 0px; + + /* properties for all widgets */ + enabled: true; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 10px; + border-color: @border-colour; + cursor: "default"; + /* Backgroud Colors */ + background-color: @background-colour; + /* Backgroud Image */ + //background-image: url("/path/to/image.png", none); + /* Simple Linear Gradient */ + //background-image: linear-gradient(red, orange, pink, purple); + /* Directional Linear Gradient */ + //background-image: linear-gradient(to bottom, pink, yellow, magenta); + /* Angle Linear Gradient */ + //background-image: linear-gradient(45, cyan, purple, indigo); +} + +/*****----- Main Box -----*****/ +mainbox { + enabled: true; + spacing: 0px; + margin: 0px; + padding: 20px; + border: 0px solid; + border-radius: 0px 0px 0px 0px; + border-color: @border-colour; + background-color: transparent; + children: [ "inputbar", "message", "mode-switcher", "listview" ]; +} + +/*****----- Inputbar -----*****/ +inputbar { + enabled: true; + spacing: 10px; + margin: 0px 0px 10px 0px; + padding: 5px 10px; + border: 0px solid; + border-radius: 10px; + border-color: @border-colour; + background-color: @alternate-background; + text-color: @foreground-colour; + children: [ "textbox-prompt-colon", "entry" ]; +} + +prompt { + enabled: true; + background-color: inherit; + text-color: inherit; +} +textbox-prompt-colon { + enabled: true; + padding: 5px 0px; + expand: false; + str: ""; + background-color: inherit; + text-color: inherit; +} +entry { + enabled: true; + padding: 5px 0px; + background-color: inherit; + text-color: inherit; + cursor: text; + placeholder: "Search..."; + placeholder-color: inherit; +} +num-filtered-rows { + enabled: true; + expand: false; + background-color: inherit; + text-color: inherit; +} +textbox-num-sep { + enabled: true; + expand: false; + str: "/"; + background-color: inherit; + text-color: inherit; +} +num-rows { + enabled: true; + expand: false; + background-color: inherit; + text-color: inherit; +} +case-indicator { + enabled: true; + background-color: inherit; + text-color: inherit; +} + +/*****----- Listview -----*****/ +listview { + enabled: true; + columns: 1; + lines: 8; + cycle: true; + dynamic: true; + scrollbar: false; + layout: vertical; + reverse: false; + fixed-height: true; + fixed-columns: true; + + spacing: 5px; + margin: 0px; + padding: 10px; + border: 0px 2px 2px 2px ; + border-radius: 0px 0px 10px 10px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; + cursor: "default"; +} +scrollbar { + handle-width: 5px ; + handle-color: @handle-colour; + border-radius: 10px; + background-color: @alternate-background; +} + +/*****----- Elements -----*****/ +element { + enabled: true; + spacing: 10px; + margin: 0px; + padding: 6px; + border: 0px solid; + border-radius: 6px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; + cursor: pointer; +} +element normal.normal { + background-color: var(normal-background); + text-color: var(normal-foreground); +} +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); +} +element selected.normal { + background-color: var(selected-normal-background); + text-color: var(selected-normal-foreground); +} +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); +} +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-icon { + background-color: transparent; + text-color: inherit; + size: 24px; + cursor: inherit; +} +element-text { + background-color: transparent; + text-color: inherit; + highlight: inherit; + cursor: inherit; + vertical-align: 0.5; + horizontal-align: 0.0; +} + +/*****----- Mode Switcher -----*****/ +mode-switcher{ + enabled: true; + expand: false; + spacing: 0px; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; +} +button { + padding: 10px; + border: 0px 0px 2px 0px ; + border-radius: 10px 10px 0px 0px; + border-color: @border-colour; + background-color: @background-colour; + text-color: inherit; + cursor: pointer; +} +button selected { + border: 2px 2px 0px 2px ; + border-radius: 10px 10px 0px 0px; + border-color: @border-colour; + background-color: var(normal-background); + text-color: var(normal-foreground); +} + +/*****----- Message -----*****/ +message { + enabled: true; + margin: 0px 0px 10px 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px 0px 0px 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; +} +textbox { + padding: 10px; + border: 0px solid; + border-radius: 10px; + border-color: @border-colour; + background-color: @alternate-background; + text-color: @foreground-colour; + vertical-align: 0.5; + horizontal-align: 0.0; + highlight: none; + placeholder-color: @foreground-colour; + blink: true; + markup: true; +} +error-message { + padding: 10px; + border: 2px solid; + border-radius: 10px; + border-color: @border-colour; + background-color: @background-colour; + text-color: @foreground-colour; +} diff --git a/.config/hypr/scripts/appLaunch/style-8.rasi b/.config/hypr/scripts/appLaunch/style-8.rasi new file mode 100644 index 0000000..ca5623a --- /dev/null +++ b/.config/hypr/scripts/appLaunch/style-8.rasi @@ -0,0 +1,323 @@ +/** + * + * Author : Aditya Shakya (adi1090x) + * Github : @adi1090x + * + * Rofi Theme File + * Rofi Version: 1.7.3 + **/ + +/*****----- Configuration -----*****/ +configuration { + modi: "drun,run,filebrowser,ssh,window"; + show-icons: false; + display-drun: " Apps"; + display-run: " Run"; + display-filebrowser: " Files"; + display-window: " Windows"; + display-ssh: " SSH"; + drun-display-format: "{name}"; + window-format: "{w} · {c} · {t}"; +} + +/*****----- Global Properties -----*****/ +@import "shared/colors.rasi" +@import "shared/fonts.rasi" + +* { + border-colour: var(selected); + handle-colour: var(selected); + background-colour: var(background); + foreground-colour: var(foreground); + alternate-background: var(background-alt); + normal-background: var(background); + normal-foreground: var(foreground); + urgent-background: var(urgent); + urgent-foreground: var(background); + active-background: var(active); + active-foreground: var(background); + selected-normal-background: var(selected); + selected-normal-foreground: var(background); + selected-urgent-background: var(active); + selected-urgent-foreground: var(background); + selected-active-background: var(urgent); + selected-active-foreground: var(background); + alternate-normal-background: var(background); + alternate-normal-foreground: var(foreground); + alternate-urgent-background: var(urgent); + alternate-urgent-foreground: var(background); + alternate-active-background: var(active); + alternate-active-foreground: var(background); +} + +/*****----- Main Window -----*****/ +window { + /* properties for window widget */ + transparency: "real"; + location: center; + anchor: center; + fullscreen: false; + width: 800px; + x-offset: 0px; + y-offset: 0px; + + /* properties for all widgets */ + enabled: true; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 10px; + border-color: @border-colour; + cursor: "default"; + /* Backgroud Colors */ + background-color: @background-colour; + /* Backgroud Image */ + //background-image: url("/path/to/image.png", none); + /* Simple Linear Gradient */ + //background-image: linear-gradient(red, orange, pink, purple); + /* Directional Linear Gradient */ + //background-image: linear-gradient(to bottom, pink, yellow, magenta); + /* Angle Linear Gradient */ + //background-image: linear-gradient(45, cyan, purple, indigo); +} + +/*****----- Main Box -----*****/ +mainbox { + enabled: true; + spacing: 10px; + margin: 0px; + padding: 20px; + border: 0px solid; + border-radius: 0px 0px 0px 0px; + border-color: @border-colour; + background-color: transparent; + children: [ "inputbar", "message", "custombox" ]; +} + +/*****----- A Custom Box -----*****/ +custombox { + spacing: 10px; + background-color: @background-colour; + text-color: @foreground-colour; + orientation: horizontal; + children: [ "mode-switcher", "listview" ]; +} + +/*****----- Inputbar -----*****/ +inputbar { + enabled: true; + spacing: 10px; + margin: 0px; + padding: 8px 12px; + border: 0px solid; + border-radius: 8px; + border-color: @border-colour; + background-color: @alternate-background; + text-color: @foreground-colour; + children: [ "textbox-prompt-colon", "entry" ]; +} + +prompt { + enabled: true; + background-color: inherit; + text-color: inherit; +} +textbox-prompt-colon { + enabled: true; + padding: 5px 0px; + expand: false; + str: ""; + background-color: inherit; + text-color: inherit; +} +entry { + enabled: true; + padding: 5px 0px; + background-color: inherit; + text-color: inherit; + cursor: text; + placeholder: "Search..."; + placeholder-color: inherit; +} +num-filtered-rows { + enabled: true; + expand: false; + background-color: inherit; + text-color: inherit; +} +textbox-num-sep { + enabled: true; + expand: false; + str: "/"; + background-color: inherit; + text-color: inherit; +} +num-rows { + enabled: true; + expand: false; + background-color: inherit; + text-color: inherit; +} +case-indicator { + enabled: true; + background-color: inherit; + text-color: inherit; +} + +/*****----- Listview -----*****/ +listview { + enabled: true; + columns: 1; + lines: 8; + cycle: true; + dynamic: true; + scrollbar: true; + layout: vertical; + reverse: false; + fixed-height: true; + fixed-columns: true; + + spacing: 5px; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; + cursor: "default"; +} +scrollbar { + handle-width: 5px ; + handle-color: @handle-colour; + border-radius: 10px; + background-color: @alternate-background; +} + +/*****----- Elements -----*****/ +element { + enabled: true; + spacing: 10px; + margin: 0px; + padding: 10px; + border: 0px solid; + border-radius: 8px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; + cursor: pointer; +} +element normal.normal { + background-color: var(normal-background); + text-color: var(normal-foreground); +} +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); +} +element selected.normal { + background-color: var(selected-normal-background); + text-color: var(selected-normal-foreground); +} +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); +} +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-icon { + background-color: transparent; + text-color: inherit; + size: 24px; + cursor: inherit; +} +element-text { + background-color: transparent; + text-color: inherit; + highlight: inherit; + cursor: inherit; + vertical-align: 0.5; + horizontal-align: 0.0; +} + +/*****----- Mode Switcher -----*****/ +mode-switcher{ + enabled: true; + expand: false; + orientation: vertical; + spacing: 10px; + margin: 0px; + padding: 0px 0px; + border: 0px solid; + border-radius: 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; +} +button { + padding: 0px 20px 0px 20px; + border: 0px solid; + border-radius: 8px; + border-color: @border-colour; + background-color: @alternate-background; + text-color: inherit; + vertical-align: 0.5; + horizontal-align: 0.0; + cursor: pointer; +} +button selected { + background-color: var(selected-normal-background); + text-color: var(selected-normal-foreground); +} + +/*****----- Message -----*****/ +message { + enabled: true; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px 0px 0px 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; +} +textbox { + padding: 12px; + border: 0px solid; + border-radius: 8px; + border-color: @border-colour; + background-color: @alternate-background; + text-color: @foreground-colour; + vertical-align: 0.5; + horizontal-align: 0.0; + highlight: none; + placeholder-color: @foreground-colour; + blink: true; + markup: true; +} +error-message { + padding: 10px; + border: 2px solid; + border-radius: 8px; + border-color: @border-colour; + background-color: @background-colour; + text-color: @foreground-colour; +} diff --git a/.config/hypr/scripts/appLaunch/style-9.rasi b/.config/hypr/scripts/appLaunch/style-9.rasi new file mode 100644 index 0000000..ebf79ca --- /dev/null +++ b/.config/hypr/scripts/appLaunch/style-9.rasi @@ -0,0 +1,326 @@ +/** + * + * Author : Aditya Shakya (adi1090x) + * Github : @adi1090x + * + * Rofi Theme File + * Rofi Version: 1.7.3 + **/ + +/*****----- Configuration -----*****/ +configuration { + modi: "drun,run,filebrowser,ssh,window"; + show-icons: false; + display-drun: " Apps"; + display-run: " Run"; + display-filebrowser: " Files"; + display-window: " Windows"; + display-ssh: " SSH"; + drun-display-format: "{name}"; + window-format: "{w} · {c} · {t}"; +} + +/*****----- Global Properties -----*****/ +@import "shared/colors.rasi" +@import "shared/fonts.rasi" + +* { + border-colour: var(selected); + handle-colour: var(selected); + background-colour: var(background); + foreground-colour: var(foreground); + alternate-background: var(background-alt); + normal-background: var(background); + normal-foreground: var(foreground); + urgent-background: var(urgent); + urgent-foreground: var(background); + active-background: var(active); + active-foreground: var(background); + selected-normal-background: var(selected); + selected-normal-foreground: var(background); + selected-urgent-background: var(active); + selected-urgent-foreground: var(background); + selected-active-background: var(urgent); + selected-active-foreground: var(background); + alternate-normal-background: var(background); + alternate-normal-foreground: var(foreground); + alternate-urgent-background: var(urgent); + alternate-urgent-foreground: var(background); + alternate-active-background: var(active); + alternate-active-foreground: var(background); +} + +/*****----- Main Window -----*****/ +window { + /* properties for window widget */ + transparency: "real"; + location: center; + anchor: center; + fullscreen: false; + width: 700px; + x-offset: 0px; + y-offset: 0px; + + /* properties for all widgets */ + enabled: true; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 10px; + border-color: @border-colour; + cursor: "default"; + /* Backgroud Colors */ + background-color: @background-colour; + /* Backgroud Image */ + //background-image: url("/path/to/image.png", none); + /* Simple Linear Gradient */ + //background-image: linear-gradient(red, orange, pink, purple); + /* Directional Linear Gradient */ + //background-image: linear-gradient(to bottom, pink, yellow, magenta); + /* Angle Linear Gradient */ + //background-image: linear-gradient(45, cyan, purple, indigo); +} + +/*****----- Main Box -----*****/ +mainbox { + enabled: true; + spacing: 10px; + margin: 0px; + padding: 20px; + border: 0px solid; + border-radius: 0px 0px 0px 0px; + border-color: @border-colour; + background-color: transparent; + children: [ "inputbar", "message", "custombox" ]; +} + +/*****----- A Custom Box -----*****/ +custombox { + spacing: 0px; + background-color: @background-colour; + text-color: @foreground-colour; + orientation: horizontal; + children: [ "mode-switcher", "listview" ]; +} + +/*****----- Inputbar -----*****/ +inputbar { + enabled: true; + spacing: 10px; + margin: 0px; + padding: 8px 12px; + border: 0px solid; + border-radius: 8px; + border-color: @border-colour; + background-color: @alternate-background; + text-color: @foreground-colour; + children: [ "textbox-prompt-colon", "entry" ]; +} + +prompt { + enabled: true; + background-color: inherit; + text-color: inherit; +} +textbox-prompt-colon { + enabled: true; + padding: 5px 0px; + expand: false; + str: ""; + background-color: inherit; + text-color: inherit; +} +entry { + enabled: true; + padding: 5px 0px; + background-color: inherit; + text-color: inherit; + cursor: text; + placeholder: "Search..."; + placeholder-color: inherit; +} +num-filtered-rows { + enabled: true; + expand: false; + background-color: inherit; + text-color: inherit; +} +textbox-num-sep { + enabled: true; + expand: false; + str: "/"; + background-color: inherit; + text-color: inherit; +} +num-rows { + enabled: true; + expand: false; + background-color: inherit; + text-color: inherit; +} +case-indicator { + enabled: true; + background-color: inherit; + text-color: inherit; +} + +/*****----- Listview -----*****/ +listview { + enabled: true; + columns: 1; + lines: 6; + cycle: true; + dynamic: true; + scrollbar: false; + layout: vertical; + reverse: false; + fixed-height: true; + fixed-columns: true; + + spacing: 5px; + margin: 0px; + padding: 10px; + border: 2px 2px 2px 0px; + border-radius: 0px 8px 8px 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; + cursor: "default"; +} +scrollbar { + handle-width: 5px ; + handle-color: @handle-colour; + border-radius: 10px; + background-color: @alternate-background; +} + +/*****----- Elements -----*****/ +element { + enabled: true; + spacing: 10px; + margin: 0px; + padding: 10px; + border: 0px solid; + border-radius: 8px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; + cursor: pointer; +} +element normal.normal { + background-color: var(normal-background); + text-color: var(normal-foreground); +} +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); +} +element selected.normal { + background-color: var(selected-normal-background); + text-color: var(selected-normal-foreground); +} +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); +} +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-icon { + background-color: transparent; + text-color: inherit; + size: 24px; + cursor: inherit; +} +element-text { + background-color: transparent; + text-color: inherit; + highlight: inherit; + cursor: inherit; + vertical-align: 0.5; + horizontal-align: 0.0; +} + +/*****----- Mode Switcher -----*****/ +mode-switcher{ + enabled: true; + expand: false; + orientation: vertical; + spacing: 0px; + margin: 0px; + padding: 0px 0px; + border: 0px solid; + border-radius: 8px 0px 0px 8px; + border-color: @border-colour; + background-color: @alternate-background; + text-color: @foreground-colour; +} +button { + padding: 0px 20px 0px 20px; + border: 0px 2px 0px 0px; + border-radius: 0px 0px 0px 0px; + border-color: @border-colour; + background-color: transparent; + text-color: inherit; + vertical-align: 0.5; + horizontal-align: 0.0; + cursor: pointer; +} +button selected { + border: 2px 0px 2px 2px; + border-radius: 8px 0px 0px 8px; + border-color: @border-colour; + background-color: var(selected-normal-foreground); + text-color: var(selected-normal-background); +} + +/*****----- Message -----*****/ +message { + enabled: true; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px 0px 0px 0px; + border-color: @border-colour; + background-color: transparent; + text-color: @foreground-colour; +} +textbox { + padding: 12px; + border: 0px solid; + border-radius: 8px; + border-color: @border-colour; + background-color: @alternate-background; + text-color: @foreground-colour; + vertical-align: 0.5; + horizontal-align: 0.0; + highlight: none; + placeholder-color: @foreground-colour; + blink: true; + markup: true; +} +error-message { + padding: 10px; + border: 2px solid; + border-radius: 8px; + border-color: @border-colour; + background-color: @background-colour; + text-color: @foreground-colour; +} diff --git a/.config/hypr/scripts/brightness b/.config/hypr/scripts/brightness new file mode 100755 index 0000000..542b917 --- /dev/null +++ b/.config/hypr/scripts/brightness @@ -0,0 +1,18 @@ +#!/bin/sh + +down() { +brillo -u 150000 -U 2 +brightness=$(light -g) +dunstify -a "BRIGHTNESS" "Decreasing to $brightness%" -h int:value:"$brightness" -i display-brightness-symbolic -r 2593 -u normal +} + +up() { +brillo -u 150000 -A 2 +brightness=$(light -g) +dunstify -a "BRIGHTNESS" "Increasing to $brightness%" -h int:value:"$brightness" -i display-brightness-symbolic -r 2593 -u normal +} + +case "$1" in + up) up;; + down) down;; +esac diff --git a/.config/hypr/scripts/hyprPicker.sh b/.config/hypr/scripts/hyprPicker.sh new file mode 100755 index 0000000..3b6d93a --- /dev/null +++ b/.config/hypr/scripts/hyprPicker.sh @@ -0,0 +1,4 @@ +#!/bin/sh +~/.config/hypr/scripts/hyprpicker --format hex | head -c -1 | wl-copy +convert -size 100x100 xc:$(wl-paste) /tmp/color.png +dunstify --icon=/tmp/color.png "$(wl-paste)" "Copied to your clipboard!" diff --git a/.config/hypr/scripts/hyprpicker b/.config/hypr/scripts/hyprpicker new file mode 100755 index 0000000..db25d6b Binary files /dev/null and b/.config/hypr/scripts/hyprpicker differ diff --git a/.config/hypr/scripts/screensharing.sh b/.config/hypr/scripts/screensharing.sh new file mode 100755 index 0000000..15e178a --- /dev/null +++ b/.config/hypr/scripts/screensharing.sh @@ -0,0 +1,8 @@ +#!/bin/bash +sleep 1 +killall xdg-desktop-portal-hyprland +killall xdg-desktop-portal-wlr +killall xdg-desktop-portal +/usr/libexec/xdg-desktop-portal-hyprland & +sleep 2 +/usr/lib/xdg-desktop-portal & diff --git a/.config/hypr/scripts/screenshots.sh b/.config/hypr/scripts/screenshots.sh new file mode 100755 index 0000000..4fbad53 --- /dev/null +++ b/.config/hypr/scripts/screenshots.sh @@ -0,0 +1 @@ +grimblast --notify copysave area ~/Pictures/Screenshots/$(date +'%s_screenshot.png') diff --git a/.config/hypr/scripts/startpage.sh b/.config/hypr/scripts/startpage.sh new file mode 100755 index 0000000..1f10de2 --- /dev/null +++ b/.config/hypr/scripts/startpage.sh @@ -0,0 +1,5 @@ +#!/bin/sh + +if cd ~/Repos/PersonalProjects/startpage/; then +python -m http.server 10002 +fi diff --git a/.config/hypr/scripts/volume b/.config/hypr/scripts/volume new file mode 100755 index 0000000..520d82a --- /dev/null +++ b/.config/hypr/scripts/volume @@ -0,0 +1,34 @@ +#!/bin/sh + +down() { +pamixer -d 2 +volume=$(pamixer --get-volume) +[$volume -gt 0 ] && volume=`expr $volume` +dunstify -a "VOLUME" "Decreasing to $volume%" -h int:value:"$volume" -i audio-volume-low-symbolic -r 2593 -u normal +canberra-gtk-play -i audio-volume-change -d "changevolume" +} + +up() { +pamixer -i 2 +volume=$(pamixer --get-volume) +[ $volume -lt 100 ] && volume=`expr $volume` +dunstify -a "VOLUME" "Increasing to $volume%" -h int:value:"$volume" -i audio-volume-high-symbolic -r 2593 -u normal +canberra-gtk-play -i audio-volume-change -d "changevolume" +} + +mute() { +muted="$(pamixer --get-mute)" +if $muted; then + pamixer -u + dunstify -a "VOLUME" "UNMUTED" -i audio-volume-high-symbolic -r 2593 -u normal +else + pamixer -m + dunstify -a "VOLUME" "MUTED" -i audio-volume-muted-symbolic -r 2593 -u normal +fi +} + +case "$1" in + up) up;; + down) down;; + mute) mute;; +esac diff --git a/.config/hypr/wallpapers/night.jpg b/.config/hypr/wallpapers/night.jpg new file mode 100644 index 0000000..8a967c4 Binary files /dev/null and b/.config/hypr/wallpapers/night.jpg differ diff --git a/.config/hyprpaper/hyprpaper.conf b/.config/hyprpaper/hyprpaper.conf new file mode 100644 index 0000000..552ff76 --- /dev/null +++ b/.config/hyprpaper/hyprpaper.conf @@ -0,0 +1,7 @@ +# Preloads +#preload = ~/.config/hypr/themes/hypr_arch/wallpaper/ocean_front_1920x1080.png +preload = ~/Pictures/bg/wallhaven-rdv8qm.png + +# Monitors +#wallpaper = HDMI-A-1,~/.config/hypr/themes/hypr_arch/wallpaper/ocean_front_1920x1080.png +wallpaper = HDMI-A-1,~/Pictures/bg/wallhaven-rdv8qm.png diff --git a/.config/nvim/init.vim b/.config/nvim/init.vim index d94fa9d..f87ad6f 100644 --- a/.config/nvim/init.vim +++ b/.config/nvim/init.vim @@ -12,4 +12,3 @@ Plug 'vim-airline/vim-airline' Plug 'manasthakur/vim-commentor' Plug 'ap/vim-css-color' call plug#end() - diff --git a/.config/waybar/config b/.config/waybar/config new file mode 100644 index 0000000..9fddc59 --- /dev/null +++ b/.config/waybar/config @@ -0,0 +1,124 @@ +{ + "height": 30, // Waybar height (to be removed for auto height) + "layer": "top", // Waybar at top layer + "margin-top": 6, + "margin-left": 10, + "margin-bottom": 0, + "margin-right": 10, + "spacing": 5, // Gaps between modules (4px) + "modules-left": ["custom/launcher", "cpu", "memory"], + "modules-center": ["hyprland/workspaces"], + "modules-right": ["hyprland/language", "tray", "backlight", "pulseaudio", "network", "battery", "clock", "custom/power-menu"], + "hyprland/workspaces": { + "format": "{icon}", + "on-click": "activate", + "format-icons": { + "1": "1", + "2": "2", + "3": "3", + "4": "4", + "5": "5", + "6": "6", + "7": "7", + "8": "8", + "9": "9", + "10": "10", + "urgent": "", + "active": "", + "default": "" + } + }, + "hyprland/window": { + "format": "{}" + }, + "hyprland/language": { + "format": "{}", + "format-en": "en", + "format-ru": "ru", + }, + + "tray": { + "spacing": 10 + }, + "clock": { + "format-alt": "{:%a %b %d}", + "format": "{:%I:%M %p}", + "tooltip-format": "{:%B %Y}\n{calendar}", + }, + + "cpu": { + "interval": 10, + "format": " {}%", + "max-length": 10, + "on-click": "", + }, + "memory": { + "interval": 30, + "format": " {}%", + "format-alt":" {used:0.1f}G", + "max-length": 10, + }, + "backlight": { + "device": "DP-1", + "format": "{icon} {percent}%", + "format-icons": ["", "", "", "", "", "", "", "", ""], + "on-click": "", + }, + "network": { + "format-wifi": "直 {signalStrength}%", + "format-ethernet": " wired", + "format-disconnected": "睊", + "on-click": "bash ~/.config/waybar/scripts/rofi-wifi-menu.sh", + "format-disconnected": "Disconnected  ", + }, + + "pulseaudio": { + "format": "{icon} {volume}%", + "format-bluetooth": "  {volume}%", + "format-bluetooth-muted": " ", + "format-muted": "婢", + "format-icons": { + "headphone": "", + "hands-free": "", + "headset": "", + "phone": "", + "portable": "", + "car": "", + "default": ["", "", ""] + }, + "on-click": "pavucontrol" + }, + + "bluetooth": { + "on-click": "~/.config/waybar/scripts/rofi-bluetooth &", + "format": " {status}", + }, + + "battery": { + "bat": "BAT0", + "adapter": "ADP0", + "interval": 60, + "states": { + "warning": 30, + "critical": 15 + }, + "max-length": 20, + "format": "{icon} {capacity}%", + "format-warning": "{icon} {capacity}%", + "format-critical": "{icon} {capacity}%", + "format-charging": " {capacity}%", + "format-plugged": " {capacity}%", + "format-alt": "{icon} {time}", + "format-full": " {capacity}%", + "format-icons": [" ", " ", " ", " ", " "], + }, + "custom/power-menu": { + "format": " ", + "on-click": "bash ~/.config/waybar/scripts/power-menu/powermenu.sh", + }, + "custom/launcher": { + "format": " ", + "on-click": "rofi -show drun", + }, +} + diff --git a/.config/waybar/scripts/mediaplayer.py b/.config/waybar/scripts/mediaplayer.py new file mode 100644 index 0000000..1630d97 --- /dev/null +++ b/.config/waybar/scripts/mediaplayer.py @@ -0,0 +1,128 @@ +#!/usr/bin/env python3 +import argparse +import logging +import sys +import signal +import gi +import json +gi.require_version('Playerctl', '2.0') +from gi.repository import Playerctl, GLib + +logger = logging.getLogger(__name__) + + +def write_output(text, player): + logger.info('Writing output') + + output = {'text': text, + 'class': 'custom-' + player.props.player_name, + 'alt': player.props.player_name} + + sys.stdout.write(json.dumps(output) + '\n') + sys.stdout.flush() + + +def on_play(player, status, manager): + logger.info('Received new playback status') + on_metadata(player, player.props.metadata, manager) + + +def on_metadata(player, metadata, manager): + logger.info('Received new metadata') + track_info = '' + + if player.props.player_name == 'spotify' and \ + 'mpris:trackid' in metadata.keys() and \ + ':ad:' in player.props.metadata['mpris:trackid']: + track_info = 'AD PLAYING' + elif player.get_artist() != '' and player.get_title() != '': + track_info = '{artist} - {title}'.format(artist=player.get_artist(), + title=player.get_title()) + else: + track_info = player.get_title() + + if player.props.status != 'Playing' and track_info: + track_info = ' ' + track_info + write_output(track_info, player) + + +def on_player_appeared(manager, player, selected_player=None): + if player is not None and (selected_player is None or player.name == selected_player): + init_player(manager, player) + else: + logger.debug("New player appeared, but it's not the selected player, skipping") + + +def on_player_vanished(manager, player): + logger.info('Player has vanished') + sys.stdout.write('\n') + sys.stdout.flush() + + +def init_player(manager, name): + logger.debug('Initialize player: {player}'.format(player=name.name)) + player = Playerctl.Player.new_from_name(name) + player.connect('playback-status', on_play, manager) + player.connect('metadata', on_metadata, manager) + manager.manage_player(player) + on_metadata(player, player.props.metadata, manager) + + +def signal_handler(sig, frame): + logger.debug('Received signal to stop, exiting') + sys.stdout.write('\n') + sys.stdout.flush() + # loop.quit() + sys.exit(0) + + +def parse_arguments(): + parser = argparse.ArgumentParser() + + # Increase verbosity with every occurrence of -v + parser.add_argument('-v', '--verbose', action='count', default=0) + + # Define for which player we're listening + parser.add_argument('--player') + + return parser.parse_args() + + +def main(): + arguments = parse_arguments() + + # Initialize logging + logging.basicConfig(stream=sys.stderr, level=logging.DEBUG, + format='%(name)s %(levelname)s %(message)s') + + # Logging is set by default to WARN and higher. + # With every occurrence of -v it's lowered by one + logger.setLevel(max((3 - arguments.verbose) * 10, 0)) + + # Log the sent command line arguments + logger.debug('Arguments received {}'.format(vars(arguments))) + + manager = Playerctl.PlayerManager() + loop = GLib.MainLoop() + + manager.connect('name-appeared', lambda *args: on_player_appeared(*args, arguments.player)) + manager.connect('player-vanished', on_player_vanished) + + signal.signal(signal.SIGINT, signal_handler) + signal.signal(signal.SIGTERM, signal_handler) + signal.signal(signal.SIGPIPE, signal.SIG_DFL) + + for player in manager.props.player_names: + if arguments.player is not None and arguments.player != player.name: + logger.debug('{player} is not the filtered player, skipping it' + .format(player=player.name) + ) + continue + + init_player(manager, player) + + loop.run() + + +if __name__ == '__main__': + main() diff --git a/.config/waybar/scripts/power-menu/powermenu.sh b/.config/waybar/scripts/power-menu/powermenu.sh new file mode 100755 index 0000000..e93ec13 --- /dev/null +++ b/.config/waybar/scripts/power-menu/powermenu.sh @@ -0,0 +1,105 @@ +#!/usr/bin/env bash + +# Current Theme +dir="~/.config/waybar/scripts/power-menu/" +theme='style' + +# CMDs +uptime="`uptime -p | sed -e 's/up //g'`" +host=`cat /etc/hostname` + +# Options +shutdown=' Shutdown' +reboot=' Reboot' +lock=' Lock' +suspend=' Suspend' +logout=' Logout' +yes='וֹ Yes' +no='תּ No' + +# Rofi CMD +rofi_cmd() { + rofi -dmenu \ + -p "$host" \ + -mesg "Uptime: $uptime" \ + -theme ${dir}/${theme}.rasi +} + +# Confirmation CMD +confirm_cmd() { + rofi -theme-str 'window {location: center; anchor: center; fullscreen: false; width: 250px;}' \ + -theme-str 'mainbox {children: [ "message", "listview" ];}' \ + -theme-str 'listview {columns: 2; lines: 1;}' \ + -theme-str 'element-text {horizontal-align: 0.5;}' \ + -theme-str 'textbox {horizontal-align: 0.5;}' \ + -dmenu \ + -p 'Confirmation' \ + -mesg 'Are you Sure?' \ + -theme ${dir}/${theme}.rasi +} + +# Ask for confirmation +confirm_exit() { + echo -e "$yes\n$no" | confirm_cmd +} + +# Pass variables to rofi dmenu +run_rofi() { + echo -e "$lock\n$suspend\n$logout\n$reboot\n$shutdown" | rofi_cmd +} + +# Execute Command +run_cmd() { + selected="$(confirm_exit)" + if [[ "$selected" == "$yes" ]]; then + if [[ $1 == '--shutdown' ]]; then + systemctl poweroff + elif [[ $1 == '--reboot' ]]; then + systemctl reboot + elif [[ $1 == '--suspend' ]]; then + mpc -q pause + amixer set Master mute + systemctl suspend + elif [[ $1 == '--logout' ]]; then + if [[ "$DESKTOP_SESSION" == 'openbox' ]]; then + openbox --exit + elif [[ "$DESKTOP_SESSION" == 'bspwm' ]]; then + bspc quit + elif [[ "$DESKTOP_SESSION" == 'i3' ]]; then + i3-msg exit + elif [[ "$DESKTOP_SESSION" == 'plasma' ]]; then + qdbus org.kde.ksmserver /KSMServer logout 0 0 0 + elif [[ "$DESKTOP_SESSION" == 'Hyprland' ]]; then + hyprctl dispatch exit 1 + fi + fi + else + exit 0 + fi +} + +# 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 + elif [[ -x '/usr/bin/Hyprland' ]]; then + swaylock + fi + ;; + $suspend) + run_cmd --suspend + ;; + $logout) + run_cmd --logout + ;; +esac diff --git a/.config/waybar/scripts/power-menu/shared/colors.rasi b/.config/waybar/scripts/power-menu/shared/colors.rasi new file mode 100644 index 0000000..f3249c0 --- /dev/null +++ b/.config/waybar/scripts/power-menu/shared/colors.rasi @@ -0,0 +1,8 @@ +* { + background: #15161EFF; + background-alt: #1A1B26FF; + foreground: #C0CAF5FF; + selected: #33467CFF; + active: #414868FF; + urgent: #F7768EFF; +} diff --git a/.config/waybar/scripts/power-menu/shared/fonts.rasi b/.config/waybar/scripts/power-menu/shared/fonts.rasi new file mode 100644 index 0000000..970112a --- /dev/null +++ b/.config/waybar/scripts/power-menu/shared/fonts.rasi @@ -0,0 +1,12 @@ +/** + * + * Author : Aditya Shakya (adi1090x) + * Github : @adi1090x + * + * Fonts + * + **/ + +* { + font: "JetBrains Mono Nerd Font 10.5"; +} diff --git a/.config/waybar/scripts/power-menu/style.rasi b/.config/waybar/scripts/power-menu/style.rasi new file mode 100644 index 0000000..859434f --- /dev/null +++ b/.config/waybar/scripts/power-menu/style.rasi @@ -0,0 +1,161 @@ +/** + * + * Author : Aditya Shakya (adi1090x) + * Github : @adi1090x + * + * Rofi Theme File + * Rofi Version: 1.7.3 + **/ + +/*****----- Configuration -----*****/ +configuration { + show-icons: false; +} + +/*****----- Global Properties -----*****/ +@import "~/.config/waybar/scripts/power-menu/shared/colors.rasi" +@import "~/.config/waybar/scripts/power-menu/shared/fonts.rasi" + +/*****----- Main Window -----*****/ +window { + /* properties for window widget */ + transparency: "real"; + location: center; + anchor: center; + fullscreen: false; + width: 400px; + x-offset: 0px; + y-offset: 0px; + + /* properties for all widgets */ + enabled: true; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 12px; + border-color: @selected; + cursor: "default"; + background-color: @background; +} + +/*****----- Main Box -----*****/ +mainbox { + enabled: true; + spacing: 10px; + margin: 0px; + padding: 20px; + border: 0px solid; + border-radius: 0px; + border-color: @selected; + background-color: transparent; + children: [ "inputbar", "message", "listview" ]; +} + +/*****----- Inputbar -----*****/ +inputbar { + enabled: true; + spacing: 10px; + margin: 0px; + padding: 0px; + border: 0px; + border-radius: 0px; + border-color: @selected; + background-color: transparent; + text-color: @foreground; + children: [ "textbox-prompt-colon", "prompt"]; +} + +textbox-prompt-colon { + enabled: true; + expand: false; + str: ""; + padding: 10px 14px; + border-radius: 10px; + background-color: @urgent; + text-color: @background; +} +prompt { + enabled: true; + padding: 10px; + border-radius: 10px; + background-color: @active; + text-color: @background; +} + +/*****----- Message -----*****/ +message { + enabled: true; + margin: 0px; + padding: 10px; + border: 0px solid; + border-radius: 10px; + border-color: @selected; + background-color: @background-alt; + text-color: @foreground; +} +textbox { + background-color: inherit; + text-color: inherit; + vertical-align: 0.5; + horizontal-align: 0.0; + placeholder-color: @foreground; + blink: true; + markup: true; +} +error-message { + padding: 10px; + border: 0px solid; + border-radius: 0px; + border-color: @selected; + background-color: @background; + text-color: @foreground; +} + +/*****----- Listview -----*****/ +listview { + enabled: true; + columns: 1; + lines: 5; + cycle: true; + dynamic: true; + scrollbar: false; + layout: vertical; + reverse: false; + fixed-height: true; + fixed-columns: true; + + spacing: 5px; + margin: 0px; + padding: 0px; + border: 0px solid; + border-radius: 0px; + border-color: @selected; + background-color: transparent; + text-color: @foreground; + cursor: "default"; +} + +/*****----- Elements -----*****/ +element { + enabled: true; + spacing: 0px; + margin: 0px; + padding: 10px; + border: 0px solid; + border-radius: 10px; + border-color: @selected; + background-color: transparent; + text-color: @foreground; + cursor: pointer; +} +element-text { + background-color: transparent; + text-color: inherit; + cursor: inherit; + vertical-align: 0.5; + horizontal-align: 0.0; +} +element selected.normal { + background-color: var(selected); + text-color: var(background); +} diff --git a/.config/waybar/scripts/rofi-bluetooth b/.config/waybar/scripts/rofi-bluetooth new file mode 100755 index 0000000..498d854 --- /dev/null +++ b/.config/waybar/scripts/rofi-bluetooth @@ -0,0 +1,317 @@ +#!/usr/bin/env bash +# __ _ _ _ _ _ _ +# _ __ ___ / _(_) | |__ | |_ _ ___| |_ ___ ___ | |_| |__ +# | '__/ _ \| |_| |_____| '_ \| | | | |/ _ \ __/ _ \ / _ \| __| '_ \ +# | | | (_) | _| |_____| |_) | | |_| | __/ || (_) | (_) | |_| | | | +# |_| \___/|_| |_| |_.__/|_|\__,_|\___|\__\___/ \___/ \__|_| |_| +# +# Author: Nick Clyde (clydedroid) +# +# A script that generates a rofi menu that uses bluetoothctl to +# connect to bluetooth devices and display status info. +# +# Inspired by networkmanager-dmenu (https://github.com/firecat53/networkmanager-dmenu) +# Thanks to x70b1 (https://github.com/polybar/polybar-scripts/tree/master/polybar-scripts/system-bluetooth-bluetoothctl) +# +# Depends on: +# Arch repositories: rofi, bluez-utils (contains bluetoothctl) + +# Constants +divider="---------" +goback="Back" + +# Checks if bluetooth controller is powered on +power_on() { + if bluetoothctl show | grep -q "Powered: yes"; then + return 0 + else + return 1 + fi +} + +# Toggles power state +toggle_power() { + if power_on; then + bluetoothctl power off + show_menu + else + if rfkill list bluetooth | grep -q 'blocked: yes'; then + rfkill unblock bluetooth && sleep 3 + fi + bluetoothctl power on + show_menu + fi +} + +# Checks if controller is scanning for new devices +scan_on() { + if bluetoothctl show | grep -q "Discovering: yes"; then + echo "Scan: on" + return 0 + else + echo "Scan: off" + return 1 + fi +} + +# Toggles scanning state +toggle_scan() { + if scan_on; then + kill $(pgrep -f "bluetoothctl scan on") + bluetoothctl scan off + show_menu + else + bluetoothctl scan on & + echo "Scanning..." + sleep 5 + show_menu + fi +} + +# Checks if controller is able to pair to devices +pairable_on() { + if bluetoothctl show | grep -q "Pairable: yes"; then + echo "Pairable: on" + return 0 + else + echo "Pairable: off" + return 1 + fi +} + +# Toggles pairable state +toggle_pairable() { + if pairable_on; then + bluetoothctl pairable off + show_menu + else + bluetoothctl pairable on + show_menu + fi +} + +# Checks if controller is discoverable by other devices +discoverable_on() { + if bluetoothctl show | grep -q "Discoverable: yes"; then + echo "Discoverable: on" + return 0 + else + echo "Discoverable: off" + return 1 + fi +} + +# Toggles discoverable state +toggle_discoverable() { + if discoverable_on; then + bluetoothctl discoverable off + show_menu + else + bluetoothctl discoverable on + show_menu + fi +} + +# Checks if a device is connected +device_connected() { + device_info=$(bluetoothctl info "$1") + if echo "$device_info" | grep -q "Connected: yes"; then + return 0 + else + return 1 + fi +} + +# Toggles device connection +toggle_connection() { + if device_connected $1; then + bluetoothctl disconnect $1 + device_menu "$device" + else + bluetoothctl connect $1 + device_menu "$device" + fi +} + +# Checks if a device is paired +device_paired() { + device_info=$(bluetoothctl info "$1") + if echo "$device_info" | grep -q "Paired: yes"; then + echo "Paired: yes" + return 0 + else + echo "Paired: no" + return 1 + fi +} + +# Toggles device paired state +toggle_paired() { + if device_paired $1; then + bluetoothctl remove $1 + device_menu "$device" + else + bluetoothctl pair $1 + device_menu "$device" + fi +} + +# Checks if a device is trusted +device_trusted() { + device_info=$(bluetoothctl info "$1") + if echo "$device_info" | grep -q "Trusted: yes"; then + echo "Trusted: yes" + return 0 + else + echo "Trusted: no" + return 1 + fi +} + +# Toggles device connection +toggle_trust() { + if device_trusted $1; then + bluetoothctl untrust $1 + device_menu "$device" + else + bluetoothctl trust $1 + device_menu "$device" + fi +} + +# Prints a short string with the current bluetooth status +# Useful for status bars like polybar, etc. +print_status() { + if power_on; then + printf '' + + paired_devices_cmd="devices Paired" + # Check if an outdated version of bluetoothctl is used to preserve backwards compatibility + if (( $(echo "$(bluetoothctl version | cut -d ' ' -f 2) < 5.65" | bc -l) )); then + paired_devices_cmd="paired-devices" + fi + + mapfile -t paired_devices < <(bluetoothctl $paired_devices_cmd | grep Device | cut -d ' ' -f 2) + counter=0 + + for device in "${paired_devices[@]}"; do + if device_connected $device; then + device_alias=$(bluetoothctl info $device | grep "Alias" | cut -d ' ' -f 2-) + + if [ $counter -gt 0 ]; then + printf ", %s" "$device_alias" + else + printf " %s" "$device_alias" + fi + + ((counter++)) + fi + done + printf "\n" + else + echo "" + fi +} + +# A submenu for a specific device that allows connecting, pairing, and trusting +device_menu() { + device=$1 + + # Get device name and mac address + device_name=$(echo $device | cut -d ' ' -f 3-) + mac=$(echo $device | cut -d ' ' -f 2) + + # Build options + if device_connected $mac; then + connected="Connected: yes" + else + connected="Connected: no" + fi + paired=$(device_paired $mac) + trusted=$(device_trusted $mac) + options="$connected\n$paired\n$trusted\n$divider\n$goback\nExit" + + # Open rofi menu, read chosen option + chosen="$(echo -e "$options" | $rofi_command "$device_name")" + + # Match chosen option to command + case $chosen in + "" | $divider) + echo "No option chosen." + ;; + $connected) + toggle_connection $mac + ;; + $paired) + toggle_paired $mac + ;; + $trusted) + toggle_trust $mac + ;; + $goback) + show_menu + ;; + esac +} + +# Opens a rofi menu with current bluetooth status and options to connect +show_menu() { + # Get menu options + if power_on; then + power="Power: on" + + # Human-readable names of devices, one per line + # If scan is off, will only list paired devices + devices=$(bluetoothctl devices | grep Device | cut -d ' ' -f 3-) + + # Get controller flags + scan=$(scan_on) + pairable=$(pairable_on) + discoverable=$(discoverable_on) + + # Options passed to rofi + options="$devices\n$divider\n$power\n$scan\n$pairable\n$discoverable\nExit" + else + power="Power: off" + options="$power\nExit" + fi + + # Open rofi menu, read chosen option + chosen="$(echo -e "$options" | $rofi_command "Bluetooth")" + + # Match chosen option to command + case $chosen in + "" | $divider) + echo "No option chosen." + ;; + $power) + toggle_power + ;; + $scan) + toggle_scan + ;; + $discoverable) + toggle_discoverable + ;; + $pairable) + toggle_pairable + ;; + *) + device=$(bluetoothctl devices | grep "$chosen") + # Open a submenu if a device is selected + if [[ $device ]]; then device_menu "$device"; fi + ;; + esac +} + +# Rofi command to pipe into, can add any options here +rofi_command="rofi -dmenu -no-fixed-num-lines -yoffset -100 -i -p" + +case "$1" in + --status) + print_status + ;; + *) + show_menu + ;; +esac diff --git a/.config/waybar/scripts/rofi-wifi-menu.sh b/.config/waybar/scripts/rofi-wifi-menu.sh new file mode 100755 index 0000000..e6dd89f --- /dev/null +++ b/.config/waybar/scripts/rofi-wifi-menu.sh @@ -0,0 +1,38 @@ +#!/bin/sh + +notify-send "Getting list of available Wi-Fi networks..." +# Get a list of available wifi connections and morph it into a nice-looking list +wifi_list=$(nmcli --fields "SECURITY,SSID" device wifi list | sed 1d | sed 's/ */ /g' | sed -E "s/WPA*.?\S/ /g" | sed "s/^--/ /g" | sed "s/ //g" | sed "/--/d") + +connected=$(nmcli -fields WIFI g) +if [[ "$connected" =~ "enabled" ]]; then + toggle="睊 Disable Wi-Fi" +elif [[ "$connected" =~ "disabled" ]]; then + toggle="直 Enable Wi-Fi" +fi + +# Use rofi to select wifi network +chosen_network=$(echo -e "$toggle\n$wifi_list" | uniq -u | rofi -dmenu -i -selected-row 1 -p "Wi-Fi SSID: " ) +# Get name of connection +chosen_id=$(echo "${chosen_network:3}" | xargs) + +if [ "$chosen_network" = "" ]; then + exit +elif [ "$chosen_network" = "直 Enable Wi-Fi" ]; then + nmcli radio wifi on +elif [ "$chosen_network" = "睊 Disable Wi-Fi" ]; then + nmcli radio wifi off +else + # Message to show when connection is activated successfully + success_message="You are now connected to the Wi-Fi network \"$chosen_id\"." + # Get saved connections + saved_connections=$(nmcli -g NAME connection) + if [[ $(echo "$saved_connections" | grep -w "$chosen_id") = "$chosen_id" ]]; then + nmcli connection up id "$chosen_id" | grep "successfully" && notify-send "Connection Established" "$success_message" + else + if [[ "$chosen_network" =~ "" ]]; then + wifi_password=$(rofi -dmenu -p "Password: " ) + fi + nmcli device wifi connect "$chosen_id" password "$wifi_password" | grep "successfully" && notify-send "Connection Established" "$success_message" + fi +fi diff --git a/.config/waybar/scripts/spotify.sh b/.config/waybar/scripts/spotify.sh new file mode 100755 index 0000000..2350489 --- /dev/null +++ b/.config/waybar/scripts/spotify.sh @@ -0,0 +1,100 @@ +#!/bin/sh +# install playerctl + +# player_status=$(playerctl status 2> /dev/null) +# if [ "$player_status" = "Playing" ]; then +# echo "$(playerctl metadata artist) - $(playerctl metadata title)" +# elif [ "$player_status" = "Paused" ]; then +# echo " $(playerctl metadata artist) - $(playerctl metadata title)" +# fi + +#!/usr/bin/env bash +# exec 2>"$XDG_RUNTIME_DIR/waybar-playerctl.log" +# IFS=$'\n\t' +# +# while true; do +# +# while read -r playing position length name artist title arturl hpos hlen; do +# # remove leaders +# playng=${playing:1} position=${position:1} length=${length:1} name=${name:1} +# artist=${artist:1} title=${title:1} arturl=${arturl:1} hpos=${hpos:1} hlen=${hlen:1} +# +# # build line +# line="${artist:+$artist ${title:+- }}${title:+$title }${hpos:+$hpos${hlen:+|}}$hlen" +# +# # json escaping +# line="${line//\"/\\\"}" +# ((percentage = length ? (100 * (position % length)) / length : 0)) +# +# if [ -z "$line" ] +# then +# text="" +# else +# text=" $line" +# fi +# # +# # integrations for other services (nwg-wrapper) +# if [[ $title != "$ptitle" || $artist != "$partist" || $parturl != "$arturl" ]]; then +# typeset -p playing length name artist title arturl >"$XDG_RUNTIME_DIR/waybar-playerctl.info" +# pkill -8 nwg-wrapper +# ptitle=$title partist=$artist parturl=$arturl +# fi +# +# # exit if print fails +# printf '{"text":"%s","tooltip":"%s","class":"%s","percentage":%s}\n' \ +# "$text" "$playing $name | $line" "$percentage" "$percentage" || break 2 +# +# done < <( +# # requires playerctl>=2.0 +# # Add non-space character ":" before each parameter to prevent 'read' from skipping over them +# playerctl --follow metadata --player playerctld --format \ +# $':{{emoji(status)}}\t:{{position}}\t:{{mpris:length}}\t:{{playerName}}\t:{{markup_escape(artist)}}\t:{{markup_escape(title)}}\t:{{mpris:artUrl}}\t:{{duration(position)}}\t:{{duration(mpris:length)}}' & +# echo $! >"$XDG_RUNTIME_DIR/waybar-playerctl.pid" +# ) +# +# # no current players +# # exit if print fails +# echo '' || break +# sleep 15 +# +# done +# +# kill "$(<"$XDG_RUNTIME_DIR/waybar-playerctl.pid")" + +#!/usr/bin/env bash +# exec 2>"$XDG_RUNTIME_DIR/waybar-playerctl.log" +# IFS=$'\n\t' +# +# while true; do +# +# while read -r playing position length name artist title arturl hpos hlen; do + +while true; do + + player_status=$(playerctl status 2>/dev/null) + + if [ -z "$(playerctl metadata album)" ]; then + if [ "$player_status" = "Playing" ]; then + echo "$(playerctl metadata artist) - $(playerctl metadata title)" + elif [ "$player_status" = "Paused" ]; then + echo " $(playerctl metadata artist) - $(playerctl metadata title)" + else + echo "" + fi + else + if [ "$player_status" = "Playing" ]; then + echo " $(playerctl metadata artist) - $(playerctl metadata title)" + elif [ "$player_status" = "Paused" ]; then + echo "  $(playerctl metadata artist) - $(playerctl metadata title)" + else + echo "" + fi + fi + + sleep 1 + +done + +# done +# +# kill "$(<"$XDG_RUNTIME_DIR/waybar-playerctl.pid")" diff --git a/.config/waybar/scripts/weather.py b/.config/waybar/scripts/weather.py new file mode 100644 index 0000000..c7ac5c2 --- /dev/null +++ b/.config/waybar/scripts/weather.py @@ -0,0 +1,115 @@ +#!/usr/bin/env python + +import json +import requests +from datetime import datetime + +WEATHER_CODES = { + '113': '🌈', + '116': '⛅️', + '119': '☁️', + '122': '☁️', + '143': '🌫', + '176': '🌦', + '179': '🌧', + '182': '🌧', + '185': '🌧', + '200': '⛈', + '227': '🌨', + '230': '❄️', + '248': '🌫', + '260': '🌫', + '263': '🌦', + '266': '🌦', + '281': '🌧', + '284': '🌧', + '293': '🌦', + '296': '🌦', + '299': '🌧', + '302': '🌧', + '305': '🌧', + '308': '🌧', + '311': '🌧', + '314': '🌧', + '317': '🌧', + '320': '🌨', + '323': '🌨', + '326': '🌨', + '329': '❄️', + '332': '❄️', + '335': '❄️', + '338': '❄️', + '350': '🌧', + '353': '🌦', + '356': '🌧', + '359': '🌧', + '362': '🌧', + '365': '🌧', + '368': '🌨', + '371': '❄️', + '374': '🌧', + '377': '🌧', + '386': '⛈', + '389': '🌩', + '392': '⛈', + '395': '❄️' +} + +data = {} + + +weather = requests.get("https://wttr.in/?format=j1").json() + + +def format_time(time): + return time.replace("00", "").zfill(2) + + +def format_temp(temp): + return (hour['FeelsLikeC']+"°").ljust(3) + + +def format_chances(hour): + chances = { + "chanceoffog": "Fog", + "chanceoffrost": "Frost", + "chanceofovercast": "Overcast", + "chanceofrain": "Rain", + "chanceofsnow": "Snow", + "chanceofsunshine": "Sunshine", + "chanceofthunder": "Thunder", + "chanceofwindy": "Wind" + } + + conditions = [] + for event in chances.keys(): + if int(hour[event]) > 0: + conditions.append(chances[event]+" "+hour[event]+"%") + return ", ".join(conditions) + + +data['text'] = WEATHER_CODES[weather['current_condition'][0]['weatherCode']] + \ + " "+weather['current_condition'][0]['FeelsLikeC']+"°C" + +data['tooltip'] = f"{weather['current_condition'][0]['weatherDesc'][0]['value']} {weather['current_condition'][0]['temp_C']}°C\n" +data['tooltip'] += f"Feels like: {weather['current_condition'][0]['FeelsLikeC']}°C\n" +data['tooltip'] += f"Wind: {weather['current_condition'][0]['windspeedKmph']}Km/h\n" +data['tooltip'] += f"Humidity: {weather['current_condition'][0]['humidity']}%\n" +for i, day in enumerate(weather['weather']): + data['tooltip'] += f"\n" + if i == 0: + data['tooltip'] += "Today, " + if i == 1: + data['tooltip'] += "Tomorrow, " + data['tooltip'] += f"{day['date']}\n" + data['tooltip'] += f"⬆️ {day['maxtempC']}° ⬇️ {day['mintempC']}° " + data['tooltip'] += f"🌅 {day['astronomy'][0]['sunrise']} 🌇 {day['astronomy'][0]['sunset']}\n" + for hour in day['hourly']: + if i == 0: + if int(format_time(hour['time'])) < datetime.now().hour-2: + continue + data['tooltip'] += f"{format_time(hour['time'])} {WEATHER_CODES[hour['weatherCode']]} {format_temp(hour['FeelsLikeC'])} {hour['weatherDesc'][0]['value']}, {format_chances(hour)}\n" + + +print(json.dumps(data)) + diff --git a/.config/waybar/style.css b/.config/waybar/style.css new file mode 100644 index 0000000..f854185 --- /dev/null +++ b/.config/waybar/style.css @@ -0,0 +1,279 @@ +* { + /* `otf-font-awesome` is required to be installed for icons */ + font-family: JetBrainsMono Nerd Font; + font-weight: bold; + font-size: 17px; +} + +window#waybar { +/* color: #ffffff;*/ +/* border-top: 8px;*/ +/* border-radius: 8px;*/ +/* transition-duration: 0.5s;*/ +/* margin: 16px 16px;*/ + background: transparent; +} + +window#waybar.hidden { + opacity: 0.2; +} + + + +#workspaces button { + padding: 0 5px; + color: #7984A4; + background-color: transparent; + /* Use box-shadow instead of border so the text isn't offset */ + box-shadow: inset 0 -3px transparent; + /* Avoid rounded borders under each workspace name */ + border: none; + border-radius: 0; +} + +#workspaces button.focused { + color: #bf616a; +} + +#workspaces button.active { + color: #6a92d7; +} + +#workspaces button.urgent { + background-color: #eb4d4b; +} + +#window { + /* border-radius: 20px; */ + /* padding-left: 10px; */ + /* padding-right: 10px; */ + color: #64727d; +} + +#language, +#clock, +#battery, +#cpu, +#memory, +#disk, +#temperature, +#backlight, +#network, +#pulseaudio, +#custom-media, +#tray, +#mode, +#idle_inhibitor, +#mpd, +#bluetooth, +#custom-hyprPicker, +#custom-power-menu, +#custom-spotify, +#custom-weather, +#custom-weather.severe, +#custom-weather.sunnyDay, +#custom-weather.clearNight, +#custom-weather.cloudyFoggyDay, +#custom-weather.cloudyFoggyNight, +#custom-weather.rainyDay, +#custom-weather.rainyNight, +#custom-weather.showyIcyDay, +#custom-weather.snowyIcyNight, +#custom-weather.default { + padding: 0 10px; + color: #e5e5e5; + /* color: #bf616a; */ + border-radius: 9.5px; + background-color: #1f2530; +} + +#window, +#language, +#workspaces { + margin: 0 4px; + padding: 0 10px; + border-radius: 10px; + background-color: #1f2530; +} + +#cpu { + color: #fb958b; + background-color: #1f2530; +} + +#memory { + color: #ebcb8b; + background-color: #1f2530; +} + +#custom-power-menu { + border-radius: 9.5px; + background-color: #1b242b; + border-radius: 7.5px; + padding: 0 5px; +} + +#custom-launcher { + background-color: #1b242b; + color: #6a92d7; + border-radius: 7.5px; + padding: 0 3px; +} + +/* If workspaces is the leftmost module, omit left margin */ +.modules-left > widget:first-child > #workspaces { + margin-left: 0; +} + +/* If workspaces is the rightmost module, omit right margin */ +.modules-right > widget:last-child > #workspaces { + margin-right: 0; +} + +#language, +#pulseaudio { + color: #7d9bba; +} + +#backlight { + /* color: #EBCB8B; */ + color: #8fbcbb; +} + +#clock { + color: #c8d2e0; + /* background-color: #14141e; */ +} + +#battery { + color: #c0caf5; + /* background-color: #90b1b1; */ +} + +#battery.charging, +#battery.full, +#battery.plugged { + color: #26a65b; + /* background-color: #26a65b; */ +} + +@keyframes blink { + to { + background-color: rgba(30, 34, 42, 0.5); + color: #abb2bf; + } +} + +#battery.critical:not(.charging) { + color: #f53c3c; + animation-name: blink; + animation-duration: 0.5s; + animation-timing-function: linear; + animation-iteration-count: infinite; + animation-direction: alternate; +} + +label:focus { + background-color: #000000; +} + +#disk { + background-color: #964b00; +} + +#bluetooth { + color: #707d9d; +} + +#bluetooth.disconnected { + color: #f53c3c; +} + +#network { + color: #b48ead; +} + +#network.disconnected { + color: #f53c3c; +} + +#custom-media { + background-color: #66cc99; + color: #2a5c45; + min-width: 100px; +} + +#custom-media.custom-spotify { + background-color: #66cc99; +} + +#custom-media.custom-vlc { + background-color: #ffa000; +} + +#temperature { + background-color: #f0932b; +} + +#temperature.critical { + background-color: #eb4d4b; +} + +#tray > .passive { + -gtk-icon-effect: dim; +} + +#tray > .needs-attention { + -gtk-icon-effect: highlight; + background-color: #eb4d4b; +} + +#idle_inhibitor { + background-color: #2d3436; +} + +#idle_inhibitor.activated { + background-color: #ecf0f1; + color: #2d3436; +} + +#mpd { + color: #2a5c45; +} + +#mpd.disconnected { + color: #f53c3c; +} + +#mpd.stopped { + color: #90b1b1; +} + +#mpd.paused { + color: #51a37a; +} + +#language { + font-weight: bold; +/* background: #00b093;*/ +/* color: #740864;*/ +/* padding: 0 5px;*/ +/* margin: 0 5px;*/ +/* min-width: 16px;*/ +} + +#keyboard-state { + background: #97e1ad; + color: #000000; + padding: 0 0px; + margin: 0 5px; + min-width: 16px; +} + +#keyboard-state > label { + padding: 0 5px; +} + +#keyboard-state > label.locked { + background: rgba(0, 0, 0, 0.2); +} diff --git a/.zshrc b/.zshrc index 79c13b7..c257de1 100644 --- a/.zshrc +++ b/.zshrc @@ -1,5 +1,6 @@ # Theme -source ~/zsh/themes/minimal.zsh + +PS1='%~ ➜ ' # Plugins source ~/zsh/plugins/zsh-autosuggestions/zsh-autosuggestions.plugin.zsh @@ -8,6 +9,8 @@ source ~/zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.plugin.zsh ### Aliases # Editor +alias hx='helix' + alias nv='nvim' alias v='nvim' alias vim='nvim' @@ -20,10 +23,10 @@ alias pacr='doas pacman -Rns' alias pacupd='doas pacman -Syuu' # ls -alias ls='exa' -alias ll='exa -lha' -alias la='exa -lha' -alias l='exa -lh' +alias ls='ls --color' +alias la='ls -lahS' +alias ll='ls -lgahS' +alias l='ls -lhS' # Sally alias sally='~/sally/sally.sh' @@ -120,3 +123,4 @@ if [ -x /usr/bin/dircolors ]; then zstyle ':completion:*' list-colors "${(s.:.)LS_COLORS}" zstyle ':completion:*:*:kill:*:processes' list-colors '=(#b) #([0-9]#)*=0=01;31' fi +#export PATH=$PATH:/home/more/.local/bin diff --git a/zsh/themes/minimal.zsh b/zsh/themes/minimal.zsh deleted file mode 100644 index e703a10..0000000 --- a/zsh/themes/minimal.zsh +++ /dev/null @@ -1,300 +0,0 @@ -# Global settings -MNML_OK_COLOR="${MNML_OK_COLOR:-2}" -MNML_ERR_COLOR="${MNML_ERR_COLOR:-1}" - -MNML_USER_CHAR="${MNML_USER_CHAR:-λ}" -MNML_INSERT_CHAR="${MNML_INSERT_CHAR:-›}" -MNML_NORMAL_CHAR="${MNML_NORMAL_CHAR:-·}" -MNML_ELLIPSIS_CHAR="${MNML_ELLIPSIS_CHAR:-..}" -MNML_BGJOB_MODE=${MNML_BGJOB_MODE:-4} - -[ "${+MNML_PROMPT}" -eq 0 ] && MNML_PROMPT=(mnml_ssh mnml_pyenv mnml_status mnml_keymap) -[ "${+MNML_RPROMPT}" -eq 0 ] && MNML_RPROMPT=('mnml_cwd 2 0' mnml_git) -[ "${+MNML_INFOLN}" -eq 0 ] && MNML_INFOLN=(mnml_err mnml_jobs mnml_uhp mnml_files) - -[ "${+MNML_MAGICENTER}" -eq 0 ] && MNML_MAGICENTER=(mnml_me_dirs mnml_me_ls mnml_me_git) - - -# Components -function mnml_status { - local okc="$MNML_OK_COLOR" - local errc="$MNML_ERR_COLOR" - local uchar="$MNML_USER_CHAR" - - local job_ansi="0" - if [ -n "$(jobs | sed -n '$=')" ]; then - job_ansi="$MNML_BGJOB_MODE" - fi - - local err_ansi="$MNML_OK_COLOR" - if [ "$MNML_LAST_ERR" != "0" ]; then - err_ansi="$MNML_ERR_COLOR" - fi - - printf '%b' "%{\e[$job_ansi;3${err_ansi}m%}%(!.#.$uchar)%{\e[0m%}" -} - -function mnml_keymap { - local kmstat="$MNML_INSERT_CHAR" - [ "$KEYMAP" = 'vicmd' ] && kmstat="$MNML_NORMAL_CHAR" - printf '%b' "$kmstat" -} - -function mnml_cwd { - local echar="$MNML_ELLIPSIS_CHAR" - local segments="${1:-2}" - local seg_len="${2:-0}" - - local _w="%{\e[0m%}" - local _g="%{\e[38;5;244m%}" - - if [ "$segments" -le 0 ]; then - segments=0 - fi - if [ "$seg_len" -gt 0 ] && [ "$seg_len" -lt 4 ]; then - seg_len=4 - fi - local seg_hlen=$((seg_len / 2 - 1)) - - local cwd="%${segments}~" - cwd="${(%)cwd}" - cwd=("${(@s:/:)cwd}") - - local pi="" - for i in {1..${#cwd}}; do - pi="$cwd[$i]" - if [ "$seg_len" -gt 0 ] && [ "${#pi}" -gt "$seg_len" ]; then - cwd[$i]="${pi:0:$seg_hlen}$_w$echar$_g${pi: -$seg_hlen}" - fi - done - - printf '%b' "$_g${(j:/:)cwd//\//$_w/$_g}$_w" -} - -function mnml_git { - local statc="%{\e[0;3${MNML_OK_COLOR}m%}" # assume clean - local bname="$(git rev-parse --abbrev-ref HEAD 2> /dev/null)" - - if [ -n "$bname" ]; then - if [ -n "$(git status --porcelain 2> /dev/null)" ]; then - statc="%{\e[0;3${MNML_ERR_COLOR}m%}" - fi - printf '%b' "$statc$bname%{\e[0m%}" - fi -} - -function mnml_hg { - local statc="%{\e[0;3${MNML_OK_COLOR}m%}" # assume clean - local bname="$(hg branch 2> /dev/null)" - if [ -n "$bname" ]; then - if [ -n "$(hg status 2> /dev/null)" ]; then - statc="%{\e[0;3${MNML_ERR_COLOR}m%}" - fi - printf '%b' "$statc$bname%{\e[0m%}" - fi -} - -function mnml_hg_no_color { - # Assume branch name is clean - local statc="%{\e[0;3${MNML_OK_COLOR}m%}" - local bname="" - # Defines path as current directory - local current_dir=$PWD - # While current path is not root path - while [[ $current_dir != '/' ]] - do - if [[ -d "${current_dir}/.hg" ]] - then - if [[ -f "$current_dir/.hg/branch" ]] - then - bname=$(<"$current_dir/.hg/branch") - else - bname="default" - fi - printf '%b' "$statc$bname%{\e[0m%}" - return; - fi - # Defines path as parent directory and keeps looking for :) - current_dir="${current_dir:h}" - done -} - -function mnml_uhp { - local _w="%{\e[0m%}" - local _g="%{\e[38;5;244m%}" - local cwd="%~" - cwd="${(%)cwd}" - - printf '%b' "$_g%n$_w@$_g%m$_w:$_g${cwd//\//$_w/$_g}$_w" -} - -function mnml_ssh { - if [ -n "$SSH_CLIENT" ] || [ -n "$SSH_TTY" ]; then - printf '%b' "$(hostname -s)" - fi -} - -function mnml_pyenv { - if [ -n "$VIRTUAL_ENV" ]; then - _venv="$(basename $VIRTUAL_ENV)" - printf '%b' "${_venv%%.*}" - fi -} - -function mnml_err { - local _w="%{\e[0m%}" - local _err="%{\e[3${MNML_ERR_COLOR}m%}" - - if [ "${MNML_LAST_ERR:-0}" != "0" ]; then - printf '%b' "$_err$MNML_LAST_ERR$_w" - fi -} - -function mnml_jobs { - local _w="%{\e[0m%}" - local _g="%{\e[38;5;244m%}" - - local job_n="$(jobs | sed -n '$=')" - if [ "$job_n" -gt 0 ]; then - printf '%b' "$_g$job_n$_w&" - fi -} - -function mnml_files { - local _ls="$(env which ls)" - local _w="%{\e[0m%}" - local _g="%{\e[38;5;244m%}" - - local a_files="$($_ls -1A | sed -n '$=')" - local v_files="$($_ls -1 | sed -n '$=')" - local h_files="$((a_files - v_files))" - - local output="${_w}[$_g${v_files:-0}" - if [ "${h_files:-0}" -gt 0 ]; then - output="$output $_w($_g$h_files$_w)" - fi - output="$output${_w}]" - - printf '%b' "$output" -} - -# Magic enter functions -function mnml_me_dirs { - local _w="\e[0m" - local _g="\e[38;5;244m" - - if [ "$(dirs -p | sed -n '$=')" -gt 1 ]; then - local stack="$(dirs)" - echo "$_g${stack//\//$_w/$_g}$_w" - fi -} - -function mnml_me_ls { - if [ "$(uname)" = "Darwin" ] && ! ls --version &> /dev/null; then - COLUMNS=$COLUMNS CLICOLOR_FORCE=1 ls -C -G -F - else - env ls -C -F --color="always" -w $COLUMNS - fi -} - -function mnml_me_git { - git -c color.status=always status -sb 2> /dev/null -} - -# Wrappers & utils -# join outpus of components -function _mnml_wrap { - local -a arr - arr=() - local cmd_out="" - local cmd - for cmd in ${(P)1}; do - cmd_out="$(eval "$cmd")" - if [ -n "$cmd_out" ]; then - arr+="$cmd_out" - fi - done - - printf '%b' "${(j: :)arr}" -} - -# expand string as prompt would do -function _mnml_iline { - echo "${(%)1}" -} - -# display magic enter -function _mnml_me { - local -a output - output=() - local cmd_out="" - local cmd - for cmd in $MNML_MAGICENTER; do - cmd_out="$(eval "$cmd")" - if [ -n "$cmd_out" ]; then - output+="$cmd_out" - fi - done - printf '%b' "${(j:\n:)output}" | less -XFR -} - -# capture exit status and reset prompt -function _mnml_zle-line-init { - MNML_LAST_ERR="$?" # I need to capture this ASAP - zle reset-prompt -} - -# redraw prompt on keymap select -function _mnml_zle-keymap-select { - zle reset-prompt -} - -# draw infoline if no command is given -function _mnml_buffer-empty { - if [ -z "$BUFFER" ]; then - _mnml_iline "$(_mnml_wrap MNML_INFOLN)" - _mnml_me - zle redisplay - else - zle accept-line - fi -} - -# properly bind widgets -# see: https://github.com/zsh-users/zsh-syntax-highlighting/blob/1f1e629290773bd6f9673f364303219d6da11129/zsh-syntax-highlighting.zsh#L292-L356 -function _mnml_bind_widgets() { - zmodload zsh/zleparameter - - local -a to_bind - to_bind=(zle-line-init zle-keymap-select buffer-empty) - - typeset -F SECONDS - local zle_wprefix=s$SECONDS-r$RANDOM - - local cur_widget - for cur_widget in $to_bind; do - case "${widgets[$cur_widget]:-""}" in - user:_mnml_*);; - user:*) - zle -N $zle_wprefix-$cur_widget ${widgets[$cur_widget]#*:} - eval "_mnml_ww_${(q)zle_wprefix}-${(q)cur_widget}() { _mnml_${(q)cur_widget}; zle ${(q)zle_wprefix}-${(q)cur_widget} }" - zle -N $cur_widget _mnml_ww_$zle_wprefix-$cur_widget - ;; - *) - zle -N $cur_widget _mnml_$cur_widget - ;; - esac - done -} - -# Setup -autoload -U colors && colors -setopt prompt_subst - -PROMPT='$(_mnml_wrap MNML_PROMPT) ' -RPROMPT='$(_mnml_wrap MNML_RPROMPT)' - -_mnml_bind_widgets - -bindkey -M main "^M" buffer-empty -bindkey -M vicmd "^M" buffer-empty