irongit

initial commit

huncholanehuncholaneauthored
commit ac45ee8c56748e0f60712d27279892e4c82b1aa9Browse files

99 files changed, +7058 -0

+2-0.gitignore
@@ -0,0 +1,2 @@
1+wallpaper_effects
2+monitors.conf
+0-0.initial_startup_done

No content changes (mode or rename only).

+14-0Monitor_Profiles/README
@@ -0,0 +1,14 @@
1+# Create a Monitor profile you want to on this directory
2+
3+# Create a unique file name i.e. Mirror, or Office, Scale, etc etc
4+
5+# tip: You can easily create a profile using nwg-displays
6+# after creating a profile using nwg-displays, copy the ~/.config/hypr/monitors.conf file to this directory with a unique file name
7+# suggest not to call it default
8+
9+
10+# Note, after selecting Profiles wanted via Rofi (SUPER SHIFT E), previous content of ~/.config/hypr/monitors.conf will be backed up and named as Previous_Profile.conf
11+
12+# Monitor profile should be loaded automatically once selected by KooL Rofi Settings ROfi Menu, unless you disabled the auto-reload function on Hyprland settings.
13+# However, if it does not load, kindly log out and re-login. This seem apparent if you are using a Virtual Environment.
14+
+52-0Monitor_Profiles/default.conf
@@ -0,0 +1,52 @@
1+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
2+# default Monitor config
3+
4+# Monitor Configuration
5+# See Hyprland wiki for more details
6+# https://wiki.hyprland.org/Configuring/Monitors/
7+# Configure your Display resolution, offset, scale and Monitors here, use `hyprctl monitors` to get the info.
8+
9+# Monitors
10+monitor=,preferred,auto,1
11+
12+# High Refresh Rate
13+monitor=,highrr,auto,1
14+
15+# High Resolution
16+monitor=,highres,auto,1
17+
18+# NOTE: for laptop, kindly check notes in Laptops.conf regarding display
19+# Created this inorder for the monitor display to not wake up if not intended.
20+# See here: https://github.com/hyprwm/Hyprland/issues/4090
21+
22+# Some examples to set your own monitor
23+#monitor = eDP-1, preferred, auto, 1
24+#monitor = eDP-1, 2560x1440@165, 0x0, 1 #own screen
25+#monitor = DP-3, 1920x1080@240, auto, 1
26+#monitor = DP-1, preferred, auto, 1
27+#monitor = HDMI-A-1, preferred,auto,1
28+
29+# QEMU-KVM, virtual box or vmware
30+#monitor = Virtual-1, 1920x1080@60,auto,1
31+
32+# to disable a monitor
33+#monitor=name,disable
34+
35+# Mirror samples
36+#monitor=DP-3,1920x1080@60,0x0,1,mirror,DP-2
37+#monitor=,preferred,auto,1,mirror,eDP-1
38+#monitor=HDMI-A-1,2560x1440@144,0x0,1,mirror,eDP-1
39+
40+# 10 bit monitor support - See wiki https://wiki.hyprland.org/Configuring/Monitors/#10-bit-support - See NOTES below
41+# NOTE: Colors registered in Hyprland (e.g. the border color) do not support 10 bit.
42+# NOTE: Some applications do not support screen capture with 10 bit enabled. (Screen captures like OBS may render black screen)
43+# monitor=,preferred,auto,1,bitdepth,10
44+
45+#monitor=eDP-1,transform,0
46+#monitor=eDP-1,addreserved,10,10,10,49
47+
48+# workspaces - Monitor rules
49+# https://wiki.hyprland.org/Configuring/Workspace-Rules/
50+# SUPER E - Workspace-Rules
51+# See ~/.config/hypr/UserConfigs/WorkspaceRules.conf
52+
+16-0UserConfigs/00-Readme
@@ -0,0 +1,16 @@
1+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
2+
3+KooL's Hyprland-Dots
4+
5+1.) Suggest not to rename any files in this directory. As this is connected and being sourced from hyprland.conf in ~/.config/hypr
6+
7+2.) This directory, along with UserScripts directory will NOT be touch when running upgrade.sh
8+
9+3.) However, if hyprland has a big change in settings, i.e., blur section is moved into another group, you should managed the change yourself.
10+
11+4.) Guidance on the keybinds. Suggest NOT to assign a keybind which I set on the default Keybinds. Else will conflict. Once Hyprland decided to have a global keybinds, then I will adjust.
12+
13+5.) If you think that the default keybinds SHOULD be adjusted, open an issue on my github page and present me a valid argument. Like conflicting to GLOBAL keybinds, etc etc etc.
14+
15+
16+I will update the Hyprland-Dots wiki for guidance. Make sure to check out changelogs as well
+19-0UserConfigs/01-UserDefaults.conf
@@ -0,0 +1,19 @@
1+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
2+
3+# This is a file where you put your own default apps, default search Engine etc
4+
5+# Set your default editor here uncomment and reboot to take effect.
6+# NOTE, this will be automatically uncommented if you select neovim or vim to your default editor
7+env = EDITOR,nvim #default editor
8+
9+# Define preferred text editor for the KooL Quick Settings Menu (SUPER SHIFT E)
10+# script will take the default EDITOR and nano as fallback
11+$edit=${EDITOR:-nano}
12+
13+# These two are for UserKeybinds.conf & Waybar Modules
14+$term = alacrity # Terminal
15+$files = nautilus # File Manager
16+
17+# Default Search Engine for ROFI Search (SUPER S)
18+$Search_Engine = "https://www.google.com/search?q={}"
19+
+88-0UserConfigs/ENVariables.conf
@@ -0,0 +1,88 @@
1+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
2+# Environment variables. See https://wiki.hyprland.org/Configuring/Environment-variables/
3+
4+# Set your defaults editor through ENV in ~/.config/hypr/UserConfigs/01-UserDefaults.conf
5+
6+# environment-variables
7+# Toolkit Backend Variables
8+env = GDK_BACKEND,wayland,x11,*
9+env = QT_QPA_PLATFORM,wayland;xcb
10+env = CLUTTER_BACKEND,wayland
11+
12+#Run SDL2 applications on Wayland.
13+#Remove or set to x11 if games that provide older versions of SDL cause compatibility issues
14+#env = SDL_VIDEODRIVER,wayland
15+
16+# xdg Specifications
17+env = XDG_CURRENT_DESKTOP,Hyprland
18+env = XDG_SESSION_DESKTOP,Hyprland
19+env = XDG_SESSION_TYPE,wayland
20+
21+# QT Variables
22+env = QT_AUTO_SCREEN_SCALE_FACTOR,1
23+env = QT_WAYLAND_DISABLE_WINDOWDECORATION,1
24+env = QT_QPA_PLATFORMTHEME,qt5ct
25+env = QT_QPA_PLATFORMTHEME,qt6ct
26+
27+# hyprland-qt-support
28+env = QT_QUICK_CONTROLS_STYLE,org.hyprland.style
29+
30+# xwayland apps scale fix (useful if you are use monitor scaling).
31+# Set same value if you use scaling in Monitors.conf
32+# 1 is 100% 1.5 is 150%
33+# see https://wiki.hyprland.org/Configuring/XWayland/
34+env = GDK_SCALE,1
35+env = QT_SCALE_FACTOR,1
36+
37+# Bibata-Modern-Ice-Cursor
38+# NOTE! You must have the hyprcursor version to activate this.
39+# https://wiki.hyprland.org/Hypr-Ecosystem/hyprcursor/
40+env = HYPRCURSOR_THEME,Bibata-Modern-Ice
41+env = HYPRCURSOR_SIZE,24
42+
43+# firefox
44+env = MOZ_ENABLE_WAYLAND,1
45+
46+# electron >28 apps (may help) ##
47+# https://www.electronjs.org/docs/latest/api/environment-variables
48+env = ELECTRON_OZONE_PLATFORM_HINT,auto # auto selects Wayland if possible, X11 otherwise
49+
50+# NVIDIA
51+# This is from Hyprland Wiki. Below will be activated nvidia gpu detected
52+# See hyprland wiki https://wiki.hyprland.org/Nvidia/#environment-variables
53+
54+env = LIBVA_DRIVER_NAME,nvidia
55+env = __GLX_VENDOR_LIBRARY_NAME,nvidia
56+env = NVD_BACKEND,direct
57+
58+# additional ENV's for nvidia. Caution, activate with care
59+#env = GBM_BACKEND,nvidia-drm
60+
61+#env = __GL_GSYNC_ALLOWED,1 #adaptive Vsync
62+#env = __NV_PRIME_RENDER_OFFLOAD,1
63+#env = __VK_LAYER_NV_optimus,NVIDIA_only
64+#env = WLR_DRM_NO_ATOMIC,1
65+
66+# FOR VM and POSSIBLY NVIDIA
67+# LIBGL_ALWAYS_SOFTWARE software mesa rendering
68+#env = LIBGL_ALWAYS_SOFTWARE,1 # Warning. May cause hyprland to crash
69+#env = WLR_RENDERER_ALLOW_SOFTWARE,1
70+
71+# nvidia firefox (for hardware acceleration on FF)?
72+# check this post https://github.com/elFarto/nvidia-vaapi-driver#configuration
73+#env = MOZ_DISABLE_RDD_SANDBOX,1
74+#env = EGL_PLATFORM,wayland
75+
76+#### Aquamarine Environment Variables #### ( Hyprland > 0.45 )
77+# https://wiki.hyprland.org/Configuring/Environment-variables/#aquamarine-environment-variables----ref-httpsgithubcomhyprwmaquamarineblobmaindocsenvmd---
78+# env = AQ_TRACE,1 # Enables more verbose logging.
79+# env = AQ_DRM_DEVICES,/dev/dri/card1:/dev/dri/card0 # Set an explicit list of DRM devices (GPUs) to use. It’s a colon-separated list of paths, with the first being the primary. E.g. /dev/dri/card1:/dev/dri/card0
80+# env = AQ_MGPU_NO_EXPLICIT,1 # Disables explicit syncing on mgpu buffers
81+# env = AQ_NO_MODIFIERS,1 # Disables modifiers for DRM buffers
82+
83+#### Hyprland Environment Variables ####
84+# https://wiki.hyprland.org/Configuring/Environment-variables/#hyprland-environment-variables
85+# env = HYPRLAND_TRACE,1 # Enables more verbose logging.
86+# env = HYPRLAND_NO_RT,1 # Disables realtime priority setting by Hyprland.
87+# env = HYPRLAND_NO_SD_NOTIFY,1 # If systemd, disables the 'sd_notify' calls.
88+# env = HYPRLAND_NO_SD_VARS,1 # Disables management of variables in systemd and dbus activation environments.
+4-0UserConfigs/LaptopDisplay.conf
@@ -0,0 +1,4 @@
1+# NOTE, THIS FILE IS BEING USED by disabling Laptop display monitor behaviour when closing lid.
2+# See notes on Laptops.conf
3+
4+#monitor = eDP-1, preferred, auto, 1
+55-0UserConfigs/Laptops.conf
@@ -0,0 +1,55 @@
1+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
2+
3+# See https://wiki.hyprland.org/Configuring/Keywords/ for more variable settings
4+# These configs are mostly for laptops. This is addemdum to Keybinds.conf
5+
6+$mainMod = SUPER
7+$scriptsDir = $HOME/.config/hypr/scripts
8+$UserConfigs = $HOME/.config/hypr/UserConfigs
9+
10+# for disabling Touchpad. hyprctl devices to get device name.
11+$Touchpad_Device=asue1209:00-04f3:319f-touchpad
12+
13+binde = , xf86KbdBrightnessDown, exec, $scriptsDir/BrightnessKbd.sh --dec # decrease keyboard brightness
14+binde = , xf86KbdBrightnessUp, exec, $scriptsDir/BrightnessKbd.sh --inc # increase keyboard brightness
15+bind = , xf86Launch1, exec, rog-control-center # ASUS Armory crate button
16+bind = , xf86Launch3, exec, asusctl led-mode -n # FN+F4 Switch keyboard RGB profile
17+bind = , xf86Launch4, exec, asusctl profile -n # FN+F5 change of fan profiles (Quite, Balance, Performance)
18+binde = , xf86MonBrightnessDown, exec, $scriptsDir/Brightness.sh --dec # decrease monitor brightness
19+binde = , xf86MonBrightnessUp, exec, $scriptsDir/Brightness.sh --inc # increase monitor brightness
20+bind = , xf86TouchpadToggle, exec, $scriptsDir/TouchPad.sh # disable touchpad
21+
22+# Screenshot keybindings using F6 (no PrinSrc button)
23+bind = $mainMod, F6, exec, $scriptsDir/ScreenShot.sh --now # screenshot
24+bind = $mainMod SHIFT, F6, exec, $scriptsDir/ScreenShot.sh --area # screenshot (area)
25+bind = $mainMod CTRL, F6, exec, $scriptsDir/ScreenShot.sh --in5 # # screenshot (5 secs delay)
26+bind = $mainMod ALT, F6, exec, $scriptsDir/ScreenShot.sh --in10 # screenshot (10 secs delay)
27+bind = ALT, F6, exec, $scriptsDir/ScreenShot.sh --active # screenshot (active window only)
28+
29+$TOUCHPAD_ENABLED = true
30+device {
31+ name = $Touchpad_Device
32+ enabled = $TOUCHPAD_ENABLED
33+}
34+# Below are useful when you are connecting your laptop in external display
35+# Suggest you edit below for your laptop display
36+# From WIKI This is to disable laptop monitor when lid is closed.
37+# consult https://wiki.hyprland.org/hyprland-wiki/pages/Configuring/Binds/#switches
38+#bindl = , switch:off:Lid Switch,exec,hyprctl keyword monitor "eDP-1, preferred, auto, 1"
39+#bindl = , switch:on:Lid Switch,exec,hyprctl keyword monitor "eDP-1, disable"
40+
41+
42+# WARNING! Using this method has some caveats!! USE THIS PART WITH SOME CAUTION!
43+# CONS of doing this, is that you need to set up your wallpaper (SUPER W) and choose wallpaper.
44+# CAVEATS! Sometimes the Main Laptop Monitor DOES NOT have display that it needs to re-connect your external monitor
45+# One work around is to ensure that before shutting down laptop, MAKE SURE your laptop lid is OPEN!!
46+# Make sure to comment (put # on the both the bindl = , switch ......) above
47+# NOTE: Display for laptop are being generated into LaptopDisplay.conf
48+# This part is to be use if you do not want your main laptop monitor to wake up during say wallpaper change etc
49+
50+#bindl = , switch:off:Lid Switch,exec,echo "monitor = eDP-1, preferred, auto, 1" > $UserConfigs/LaptopDisplay.conf
51+#bindl = , switch:on:Lid Switch,exec,echo "monitor = eDP-1, disable" > $UserConfigs/LaptopDisplay.conf
52+
53+# for laptop-lid action (to erase the last entry)
54+#exec-once = echo "monitor = eDP-1, preferred, auto, 1" > $HOME/.config/hypr/UserConfigs/LaptopDisplay.conf
55+#
+55-0UserConfigs/Startup_Apps.conf
@@ -0,0 +1,55 @@
1+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
2+# Commands and Apps to be executed at launch
3+
4+$scriptsDir = $HOME/.config/hypr/scripts
5+$UserScripts = $HOME/.config/hypr/UserScripts
6+
7+$wallDIR=$HOME/Pictures/wallpapers
8+$lock = $scriptsDir/LockScreen.sh
9+$SwwwRandom = $UserScripts/WallpaperAutoChange.sh
10+$livewallpaper=""
11+
12+# polkit
13+exec-once = /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
14+
15+# wallpaper stuff
16+exec-once = swww-daemon --format xrgb
17+#exec-once = mpvpaper '*' -o "load-scripts=no no-audio --loop" $livewallpaper
18+
19+# wallpaper random
20+#exec-once = $SwwwRandom $wallDIR # random wallpaper switcher every 30 minutes
21+
22+# Startup
23+exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
24+exec-once = systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
25+
26+# Polkit (Polkit Gnome / KDE)
27+exec-once = $scriptsDir/Polkit.sh
28+
29+# starup apps
30+exec-once = nm-applet --indicator
31+exec-once = swaync
32+exec-once = ags
33+#exec-once = blueman-applet
34+#exec-once = rog-control-center
35+exec-once = waybar
36+
37+#clipboard manager
38+exec-once = wl-paste --type text --watch cliphist store
39+exec-once = wl-paste --type image --watch cliphist store
40+
41+# Rainbow borders
42+exec-once = $UserScripts/RainbowBorders.sh
43+
44+# Starting hypridle to start hyprlock
45+exec-once = hypridle
46+
47+
48+# Here are list of features available but disabled by default
49+# exec-once = swww-daemon --format xrgb && swww img $HOME/Pictures/wallpapers/mecha-nostalgia.png # persistent wallpaper
50+
51+#gnome polkit for nixos
52+#exec-once = $scriptsDir/Polkit-NixOS.sh
53+
54+# xdg-desktop-portal-hyprland (should be auto starting. However, you can force to start)
55+#exec-once = $scriptsDir/PortalHyprland.sh
+24-0UserConfigs/UserAnimations.conf
@@ -0,0 +1,24 @@
1+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
2+#
3+# name "Fast"
4+# credit https://github.com/mylinuxforwork/dotfiles
5+
6+animations {
7+ enabled = true
8+ bezier = linear, 0, 0, 1, 1
9+ bezier = md3_standard, 0.2, 0, 0, 1
10+ bezier = md3_decel, 0.05, 0.7, 0.1, 1
11+ bezier = md3_accel, 0.3, 0, 0.8, 0.15
12+ bezier = overshot, 0.05, 0.9, 0.1, 1.1
13+ bezier = crazyshot, 0.1, 1.5, 0.76, 0.92
14+ bezier = hyprnostretch, 0.05, 0.9, 0.1, 1.0
15+ bezier = fluent_decel, 0.1, 1, 0, 1
16+ bezier = easeInOutCirc, 0.85, 0, 0.15, 1
17+ bezier = easeOutCirc, 0, 0.55, 0.45, 1
18+ bezier = easeOutExpo, 0.16, 1, 0.3, 1
19+ animation = windows, 1, 3, md3_decel, popin 60%
20+ animation = border, 1, 10, default
21+ animation = fade, 1, 2.5, md3_decel
22+ animation = workspaces, 1, 3.5, easeOutExpo, slide
23+ animation = specialWorkspace, 1, 3, md3_decel, slidevert
24+}
+58-0UserConfigs/UserDecorations.conf
@@ -0,0 +1,58 @@
1+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
2+# Decoration Settings
3+
4+# Hyprland Wiki Links
5+# Animation - https://wiki.hyprland.org/Configuring/Animations/
6+# Decoration - https://wiki.hyprland.org/Configuring/Variables/#decoration
7+
8+# Sourcing colors generated by wallust
9+source = $HOME/.config/hypr/wallust/wallust-hyprland.conf
10+
11+general {
12+ border_size = 2
13+ gaps_in = 2
14+ gaps_out = 4
15+
16+ col.active_border = $color12
17+ col.inactive_border = $color10
18+}
19+
20+decoration {
21+ rounding = 10
22+
23+ active_opacity = 1.0
24+ inactive_opacity = 0.9
25+ fullscreen_opacity = 1.0
26+
27+ dim_inactive = true
28+ dim_strength = 0.1
29+ dim_special = 0.8
30+
31+ shadow {
32+ enabled = true
33+ range = 3
34+ render_power = 1
35+
36+ color = $color12
37+ color_inactive = $color10
38+ }
39+
40+
41+ blur {
42+ enabled = true
43+ size = 6
44+ passes = 2
45+ ignore_opacity = true
46+ new_optimizations = true
47+ special = true
48+ popups = true
49+ }
50+}
51+
52+group {
53+ col.border_active = $color15
54+
55+ groupbar {
56+ col.active = $color0
57+ }
58+}
+105-0UserConfigs/UserKeybinds.conf
@@ -0,0 +1,105 @@
1+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
2+# This is where you put your own keybinds. Be Mindful to check as well ~/.config/hypr/configs/Keybinds.conf to avoid conflict
3+# if you think I should replace the Pre-defined Keybinds in ~/.config/hypr/configs/Keybinds.conf , submit an issue or let me know in DC and present me a valid reason as to why, such as conflicting with global shortcuts, etc etc
4+
5+# See https://wiki.hyprland.org/Configuring/Keywords/ for more settings and variables
6+# See also Laptops.conf for laptops keybinds
7+
8+# /* ---- ✴️ Variables ✴️ ---- */ #
9+$mainMod = SUPER
10+$files = nautilus
11+$term = foot
12+$scriptsDir = $HOME/.config/hypr/scripts
13+$UserScripts = $HOME/.config/hypr/UserScripts
14+
15+# Move focus vim style
16+bind = $mainMod, h, movefocus, l
17+bind = $mainMod, l, movefocus, r
18+bind = $mainMod, k, movefocus, u
19+bind = $mainMod, j, movefocus, d
20+
21+# move actual window vim style
22+bind = $mainMod SHIFT, h, swapwindow, l
23+bind = $mainMod SHIFT, j, swapwindow, d
24+bind = $mainMod SHIFT, k, swapwindow, u
25+bind = $mainMod SHIFT, l, swapwindow, r
26+
27+# f11 and f12 for music
28+# bind = , F10, exec, playerctl previous
29+bind = , F11, exec, playerctl play-pause
30+bind = , F12, exec, playerctl next
31+
32+# Cycle tabs in group
33+bind = $mainMod, p, changegroupactive, f
34+bind = $mainMod, n, changegroupactive, b
35+
36+# common shortcuts
37+#bindr = $mainMod, $mainMod_L, exec, pkill rofi || rofi -show drun -modi drun,filebrowser,run,window # Super Key to Launch rofi menu
38+bind = $mainMod, D, exec, pkill rofi || true && rofi -show drun -modi drun,filebrowser,run,window # Main Menu (APP Launcher)
39+bind = $mainMod, B, exec, xdg-open "https://" # default browser
40+bind = $mainMod, A, exec, pkill rofi || true && ags -t 'overview' # desktop overview (if installed)
41+bind = $mainMod, Return, exec, $term #terminal
42+bind = $mainMod, E, exec, $files #file manager
43+
44+# move workspace to another monitor
45+bind = $mainMod, M, exec, \
46+ hyprctl dispatch moveworkspacetomonitor $(hyprctl activeworkspace -j | jq '.id') \
47+ $(hyprctl monitors -j | jq -r 'map(select(.focused != true))[0].name')
48+
49+bind = $mainMod, C, exec, gtk-launch clockify
50+
51+# FEATURES / EXTRAS
52+bind = $mainMod CTRL, H, exec, $scriptsDir/KeyHints.sh # help / cheat sheet
53+bind = $mainMod ALT, R, exec, $scriptsDir/Refresh.sh # Refresh waybar, swaync, rofi
54+bind = $mainMod ALT, E, exec, $scriptsDir/RofiEmoji.sh # emoji menu
55+# bind = $mainMod, S, exec, $scriptsDir/RofiSearch.sh # Google search using rofi
56+bind = $mainMod ALT, O, exec, $scriptsDir/ChangeBlur.sh # Toggle blur settings
57+bind = $mainMod SHIFT, G, exec, $scriptsDir/GameMode.sh # Toggle animations ON/OFF
58+bind = $mainMod ALT, L, exec, $scriptsDir/ChangeLayout.sh # Toggle Master or Dwindle Layout
59+bind = $mainMod ALT, V, exec, $scriptsDir/ClipManager.sh # Clipboard Manager
60+bind = $mainMod CTRL, R, exec, $scriptsDir/RofiThemeSelector.sh # KooL Rofi Menu Theme Selector
61+bind = $mainMod CTRL SHIFT, R, exec, pkill rofi || true && $scriptsDir/RofiThemeSelector-modified.sh # modified Rofi Theme Selector
62+bind = $mainMod, V, exec, $scriptsDir/OpenVolume.sh # Open volume control
63+bind = $mainMod SHIFT, V, exec, $scriptsDir/LiveMicTest.sh # Live mic test
64+
65+bind = $mainMod SHIFT, F, fullscreen # whole full screen
66+bind = $mainMod, F, fullscreen, 1 # fake full screen
67+# bind = $mainMod, SPACE, togglefloating, #Float Mode
68+bind = $mainMod ALT, SPACE, exec, hyprctl dispatch workspaceopt allfloat #All Float Mode
69+bind = $mainMod SHIFT, Return, exec, [float; move 15% 5%; size 70% 60%] $term # Dropdown terminal
70+
71+# Desktop zooming or magnifier
72+bind = $mainMod ALT, mouse_down, exec, hyprctl keyword cursor:zoom_factor "$(hyprctl getoption cursor:zoom_factor | awk 'NR==1 {factor = $2; if (factor < 1) {factor = 1}; print factor * 2.0}')"
73+bind = $mainMod ALT, mouse_up, exec, hyprctl keyword cursor:zoom_factor "$(hyprctl getoption cursor:zoom_factor | awk 'NR==1 {factor = $2; if (factor < 1) {factor = 1}; print factor / 2.0}')"
74+
75+## NOTES for ja (Hyprland version 0.39 (Ubuntu 24.04))
76+#bind = $mainMod ALT, mouse_down, exec, hyprctl keyword misc:cursor_zoom_factor "$(hyprctl getoption misc:cursor_zoom_factor | awk 'NR==1 {factor = $2; if (factor < 1) {factor = 1}; print factor * 2.0}')"
77+#bind = $mainMod ALT, mouse_up, exec, hyprctl keyword misc:cursor_zoom_factor "$(hyprctl getoption misc:cursor_zoom_factor | awk 'NR==1 {factor = $2; if (factor < 1) {factor = 1}; print factor / 2.0}')"
78+
79+# Waybar / Bar related
80+bind = $mainMod CTRL ALT, B, exec, pkill -SIGUSR1 waybar # Toggle hide/show waybar
81+bind = $mainMod CTRL, B, exec, $scriptsDir/WaybarStyles.sh # Waybar Styles Menu
82+bind = $mainMod ALT, B, exec, $scriptsDir/WaybarLayout.sh # Waybar Layout Menu
83+
84+# FEATURES / EXTRAS (UserScripts)
85+bind = $mainMod, S, exec, $UserScripts/ToggleStudy.sh
86+bind = $mainMod SHIFT, M, exec, $UserScripts/RofiBeats.sh # online music using rofi
87+bind = $mainMod, W, exec, $UserScripts/WallpaperSelect.sh # Select wallpaper to apply
88+bind = $mainMod SHIFT, W, exec, $UserScripts/WallpaperEffects.sh # Wallpaper Effects by imagemagick
89+bind = CTRL ALT, W, exec, $UserScripts/WallpaperRandom.sh # Random wallpapers
90+bind = $mainMod CTRL, O, exec, hyprctl setprop active opaque toggle # disable opacity on active window
91+bind = $mainMod CTRL, K, exec, $scriptsDir/KeyBinds.sh # search keybinds via rofi
92+bind = $mainMod SHIFT, A, exec, $scriptsDir/Animations.sh #hyprland animations menu
93+bind = $mainMod SHIFT, O, exec, $UserScripts/ZshChangeTheme.sh # Change oh-my-zsh theme
94+# bindln = ALT_L, SHIFT_L, exec, $scriptsDir/SwitchKeyboardLayout.sh # Change keyboard layout
95+# bind = $mainMod ALT, C, exec, qalculate-gtk # calculator (qalculate)
96+bind = $mainMod ALT, C, exec, $UserScripts/Calculator.sh # calculator (qalculate)
97+bind = $mainMod SHIFT, C, exec, gnome-calendar
98+# bind = $mainMod ALT, C, exec, $UserScripts/RofiCalc.sh # calculator (qalculate)
99+
100+# For passthrough keyboard into a VM
101+# bind = $mainMod ALT, P, submap, passthru
102+#submap = passthru
103+# to unbind
104+#bind = $mainMod ALT, P, submap, reset
105+#submap = reset
+118-0UserConfigs/UserSettings.conf
@@ -0,0 +1,118 @@
1+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
2+# User Settings
3+# This is where you put your own settings as this will not be touched during update
4+# if the upgrade.sh is used.
5+
6+# refer to Hyprland wiki for more info https://wiki.hyprland.org/Configuring/Variables/
7+
8+# NOTE: some settings are in ~/.config/hypr/UserConfigs/UserDecorAnimations.conf
9+
10+dwindle {
11+ pseudotile = yes
12+ preserve_split = yes
13+ special_scale_factor = 0.8
14+}
15+
16+master {
17+ new_status = master
18+ new_on_top = 1
19+ mfact = 0.5
20+}
21+
22+general {
23+ resize_on_border = true
24+
25+ layout = dwindle
26+}
27+
28+input {
29+ kb_layout = us,us
30+ kb_variant = ,dvorak
31+ kb_model =
32+ kb_options = grp:win_space_toggle
33+ kb_rules =
34+ repeat_rate = 50
35+ repeat_delay = 300
36+
37+ sensitivity = 0 #mouse sensitivity
38+ #accel_profile = # flat or adaptive or blank or EMPTY means libinput’s default mode
39+ numlock_by_default = true
40+ left_handed = false
41+ follow_mouse = true
42+ float_switch_override_focus = false
43+
44+ touchpad {
45+ disable_while_typing = true
46+ natural_scroll = true
47+ clickfinger_behavior = false
48+ middle_button_emulation = true
49+ tap-to-click = true
50+ drag_lock = false
51+ }
52+
53+ # below for devices with touchdevice ie. touchscreen
54+ touchdevice {
55+ enabled = true
56+ }
57+
58+ # below is for table see link above for proper variables
59+ tablet {
60+ transform = 0
61+ left_handed = 0
62+ }
63+}
64+
65+gestures {
66+ # workspace_swipe = true
67+ # workspace_swipe_fingers = 3
68+ workspace_swipe_distance = 500
69+ workspace_swipe_invert = true
70+ workspace_swipe_min_speed_to_force = 30
71+ workspace_swipe_cancel_ratio = 0.5
72+ workspace_swipe_create_new = true
73+ workspace_swipe_forever = true
74+ #workspace_swipe_use_r = true #uncomment if wanted a forever create a new workspace with swipe right
75+}
76+
77+misc {
78+ disable_hyprland_logo = true
79+ disable_splash_rendering = true
80+ vfr = true
81+ vrr = 2
82+ mouse_move_enables_dpms = true
83+ enable_swallow = off
84+ swallow_regex = ^(kitty)$
85+ focus_on_activate = false
86+ initial_workspace_tracking = 0
87+ middle_click_paste = false
88+}
89+
90+#opengl {
91+# nvidia_anti_flicker = true
92+#}
93+
94+binds {
95+ workspace_back_and_forth = true
96+ allow_workspace_cycles = true
97+ pass_mouse_when_bound = false
98+}
99+
100+#Could help when scaling and not pixelating
101+xwayland {
102+ enabled = true
103+ force_zero_scaling = true
104+}
105+
106+render {
107+ # explicit_sync = 2
108+ # explicit_sync_kms = 2
109+ direct_scanout = 0
110+}
111+
112+cursor {
113+ sync_gsettings_theme = true
114+ no_hardware_cursors = 1 # change to 1 if want to disable
115+ enable_hyprcursor = true
116+ warp_on_change_workspace = 2
117+ no_warps = true
118+}
+20-0UserConfigs/WindowRules.conf
@@ -0,0 +1,20 @@
1+# https://wiki.hypr.land/Configuring/Window-Rules/
2+
3+# Master window rules
4+windowrule = border_size 1, rounding 1, match:class .*
5+
6+# Volume Control
7+windowrule = tag +volume, match:initial_class ^(pavucontrol|org.pulseaudio.pavucontrol|com.saivert.pwvucontrol)$
8+windowrule = float on, center on, size window_w window_h*0.8, pin on, match:tag volume
9+
10+# Zen Browser
11+windowrule = workspace 2, match:class zen
12+windowrule = center on, float on, size monitor_w*0.8 monitor_h*0.8, match:title ^Save As.*$
13+
14+# Files
15+windowrule = tag +files, match:initial_class ^(org.gnome.Nautilus)$
16+windowrule = tag +files, match:title ^(Save As.*|All Files.*).*$
17+windowrule = float on, center on, size monitor_w*0.8 monitor_h*0.8, match:tag files
18+
19+# Chrome Browser
20+windowrule = workspace 3, match:class google-chrome
+32-0UserConfigs/WorkSpaceRules
@@ -0,0 +1,32 @@
1+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
2+
3+# NOTE: THIS IS NOT BEING SOURCED by hyprland
4+# It is only here as a guide if you want to do it manually
5+# The file you should edit is ~/.config/hypr/workspaces.conf
6+# Since that is the work space rules being sourced by hyprland
7+# use nwg-displays to handle your workspace rules.
8+
9+# You can set workspace rules to achieve workspace-specific behaviors.
10+# For instance, you can define a workspace where all windows are drawn without borders or gaps.
11+
12+# https://wiki.hyprland.org/Configuring/Workspace-Rules/
13+
14+# Assigning workspace to a certain monitor. Below are just examples
15+# workspace = 1, monitor:eDP-1
16+# workspace = 2, monitor:eDP-1
17+# workspace = 3, monitor:eDP-1
18+# workspace = 4, monitor:eDP-1
19+# workspace = 5, monitor:DP-2
20+# workspace = 6, monitor:DP-2
21+# workspace = 7, monitor:DP-2
22+# workspace = 8, monitor:DP-2
23+
24+
25+# example rules (from wiki)
26+# workspace = 3, rounding:false, decorate:false
27+# workspace = name:coding, rounding:false, decorate:false, gapsin:0, gapsout:0, border:false, decorate:false, monitor:DP-1
28+# workspace = 8,bordersize:8
29+# workspace = name:Hello, monitor:DP-1, default:true
30+# workspace = name:gaming, monitor:desc:Chimei Innolux Corporation 0x150C, default:true
31+# workspace = 5, on-created-empty:[float] firefox
32+# workspace = special:scratchpad, on-created-empty:foot
+5-0UserScripts/00-Readme
@@ -0,0 +1,5 @@
1+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
2+
3+# Place your new scripts here.
4+# If you need to edit a script from main script (~/.config/hypr/scripts), copy it on this directory, and edit.
5+# Make sure to update as well the keybinds in ~/.config/hypr/UserConfigs directory if any script is linked to it
+2-0UserScripts/Calculator.sh
@@ -0,0 +1,2 @@
1+#!/bin/bash
2+qalculate-gtk
+14-0UserScripts/RainbowBorders.sh
@@ -0,0 +1,14 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
3+# for rainbow borders animation
4+
5+function random_hex() {
6+ random_hex=("0xff$(openssl rand -hex 3)")
7+ echo $random_hex
8+}
9+
10+# rainbow colors only for active window
11+hyprctl keyword general:col.active_border $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) 270deg
12+
13+# rainbow colors for inactive window (uncomment to take effect)
14+#hyprctl keyword general:col.inactive_border $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) $(random_hex) 270deg
+134-0UserScripts/RofiBeats.sh
@@ -0,0 +1,134 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
3+# For Rofi Beats to play online Music or Locally saved media files
4+
5+# Variables
6+mDIR="$HOME/Music/"
7+iDIR="$HOME/.config/swaync/icons"
8+rofi_theme="$HOME/.config/rofi/config-rofi-Beats.rasi"
9+rofi_theme_1="$HOME/.config/rofi/config-rofi-Beats-menu.rasi"
10+
11+# Online Stations. Edit as required
12+declare -A online_music=(
13+ ["FM - Easy Rock 96.3 📻🎶"]="https://radio-stations-philippines.com/easy-rock"
14+ ["FM - Easy Rock - Baguio 91.9 📻🎶"]="https://radio-stations-philippines.com/easy-rock-baguio"
15+ ["FM - Love Radio 90.7 📻🎶"]="https://radio-stations-philippines.com/love"
16+ ["FM - WRock - CEBU 96.3 📻🎶"]="https://onlineradio.ph/126-96-3-wrock.html"
17+ ["FM - Fresh Philippines 📻🎶"]="https://onlineradio.ph/553-fresh-fm.html"
18+ ["Radio - Lofi Girl 🎧🎶"]="https://play.streamafrica.net/lofiradio"
19+ ["Radio - Chillhop 🎧🎶"]="http://stream.zeno.fm/fyn8eh3h5f8uv"
20+ ["Radio - Ibiza Global 🎧🎶"]="https://filtermusic.net/ibiza-global"
21+ ["Radio - Metal Music 🎧🎶"]="https://tunein.com/radio/mETaLmuSicRaDio-s119867/"
22+ ["YT - Wish 107.5 YT Pinoy HipHop 📻🎶"]="https://youtube.com/playlist?list=PLkrzfEDjeYJnmgMYwCKid4XIFqUKBVWEs&si=vahW_noh4UDJ5d37"
23+ ["YT - Youtube Top 100 Songs Global 📹🎶"]="https://youtube.com/playlist?list=PL4fGSI1pDJn6puJdseH2Rt9sMvt9E2M4i&si=5jsyfqcoUXBCSLeu"
24+ ["YT - Wish 107.5 YT Wishclusives 📹🎶"]="https://youtube.com/playlist?list=PLkrzfEDjeYJn5B22H9HOWP3Kxxs-DkPSM&si=d_Ld2OKhGvpH48WO"
25+ ["YT - Relaxing Piano Music 🎹🎶"]="https://youtu.be/6H7hXzjFoVU?si=nZTPREC9lnK1JJUG"
26+ ["YT - Youtube Remix 📹🎶"]="https://youtube.com/playlist?list=PLeqTkIUlrZXlSNn3tcXAa-zbo95j0iN-0"
27+ ["YT - Korean Drama OST 📹🎶"]="https://youtube.com/playlist?list=PLUge_o9AIFp4HuA-A3e3ZqENh63LuRRlQ"
28+ ["YT - lofi hip hop radio beats 📹🎶"]="https://www.youtube.com/live/jfKfPfyJRdk?si=PnJIA9ErQIAw6-qd"
29+ ["YT - Relaxing Piano Jazz Music 🎹🎶"]="https://youtu.be/85UEqRat6E4?si=jXQL1Yp2VP_G6NSn"
30+)
31+
32+# Populate local_music array with files from music directory and subdirectories
33+populate_local_music() {
34+ local_music=()
35+ filenames=()
36+ while IFS= read -r file; do
37+ local_music+=("$file")
38+ filenames+=("$(basename "$file")")
39+ done < <(find -L "$mDIR" -type f \( -iname "*.mp3" -o -iname "*.flac" -o -iname "*.wav" -o -iname "*.ogg" -o -iname "*.mp4" \))
40+}
41+
42+# Function for displaying notifications
43+notification() {
44+ notify-send -u normal -i "$iDIR/music.png" "Now Playing:" "$@"
45+}
46+
47+# Main function for playing local music
48+play_local_music() {
49+ populate_local_music
50+
51+ # Prompt the user to select a song
52+ choice=$(printf "%s\n" "${filenames[@]}" | rofi -i -dmenu -config $rofi_theme)
53+
54+ if [ -z "$choice" ]; then
55+ exit 1
56+ fi
57+
58+ # Find the corresponding file path based on user's choice and set that to play the song then continue on the list
59+ for (( i=0; i<"${#filenames[@]}"; ++i )); do
60+ if [ "${filenames[$i]}" = "$choice" ]; then
61+
62+ notification "$choice"
63+ mpv --playlist-start="$i" --loop-playlist --vid=no "${local_music[@]}"
64+
65+ break
66+ fi
67+ done
68+}
69+
70+# Main function for shuffling local music
71+shuffle_local_music() {
72+ notification "Shuffle Play local music"
73+
74+ # Play music in $mDIR on shuffle
75+ mpv --shuffle --loop-playlist --vid=no "$mDIR"
76+}
77+
78+# Main function for playing online music
79+play_online_music() {
80+ choice=$(for online in "${!online_music[@]}"; do
81+ echo "$online"
82+ done | sort | rofi -i -dmenu -config "$rofi_theme")
83+
84+ if [ -z "$choice" ]; then
85+ exit 1
86+ fi
87+
88+ link="${online_music[$choice]}"
89+
90+ notification "$choice"
91+
92+ # Play the selected online music using mpv
93+ mpv --shuffle --vid=no "$link"
94+}
95+
96+# Function to stop music and kill mpv processes
97+stop_music() {
98+ mpv_pids=$(pgrep -x mpv)
99+
100+ if [ -n "$mpv_pids" ]; then
101+ # Get the PID of the mpv process used by mpvpaper (using the unique argument added)
102+ mpvpaper_pid=$(ps aux | grep -- 'unique-wallpaper-process' | grep -v 'grep' | awk '{print $2}')
103+
104+ for pid in $mpv_pids; do
105+ if ! echo "$mpvpaper_pid" | grep -q "$pid"; then
106+ kill -9 $pid || true
107+ fi
108+ done
109+ notify-send -u low -i "$iDIR/music.png" "Music stopped" || true
110+ fi
111+}
112+
113+# Check if music is already playing
114+if pgrep -x "mpv" > /dev/null; then
115+ stop_music
116+else
117+ user_choice=$(printf "Play from Online Stations\nPlay from Music directory\nShuffle Play from Music directory" | rofi -dmenu -config $rofi_theme_1)
118+
119+ echo "User choice: $user_choice"
120+
121+ case "$user_choice" in
122+ "Play from Music directory")
123+ play_local_music
124+ ;;
125+ "Play from Online Stations")
126+ play_online_music
127+ ;;
128+ "Shuffle Play from Music directory")
129+ shuffle_local_music
130+ ;;
131+ *)
132+ ;;
133+ esac
134+fi
+30-0UserScripts/RofiCalc.sh
@@ -0,0 +1,30 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */
3+# /* Calculator (using qalculate) and rofi */
4+# /* Submitted by: https://github.com/JosephArmas */
5+
6+rofi_theme="$HOME/.config/rofi/config-calc.rasi"
7+
8+# Kill Rofi if already running before execution
9+if pgrep -x "rofi" >/dev/null; then
10+ pkill rofi
11+fi
12+
13+# main function
14+
15+while true; do
16+ result=$(
17+ rofi -i -dmenu \
18+ -config $rofi_theme \
19+ -mesg "$result = $calc_result"
20+ )
21+
22+ if [ $? -ne 0 ]; then
23+ exit
24+ fi
25+
26+ if [ -n "$result" ]; then
27+ calc_result=$(qalc -t "$result")
28+ echo "$calc_result" | wl-copy
29+ fi
30+done
+21-0UserScripts/ToggleStudy.sh
@@ -0,0 +1,21 @@
1+#!/bin/bash
2+
3+PID_FILE="/tmp/study_music.pid"
4+AUDIO_FILE=~/Music/study.wav
5+
6+if [ -f "$PID_FILE" ]; then
7+ PID=$(cat "$PID_FILE")
8+ if kill -0 "$PID" 2>/dev/null; then
9+ kill "$PID"
10+ echo "Stopped study music."
11+ rm "$PID_FILE"
12+ exit 0
13+ else
14+ rm "$PID_FILE"
15+ fi
16+fi
17+
18+# ffplay -nodisp -autoexit -loop 0 "$AUDIO_FILE" >/dev/null 2>&1 &
19+paplay --device=alsa_output.pci-0000_00_1f.3.analog-stereo "$AUDIO_FILE" &
20+echo $! >"$PID_FILE"
21+echo "Started study music."
+39-0UserScripts/WallpaperAutoChange.sh
@@ -0,0 +1,39 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
3+# source https://wiki.archlinux.org/title/Hyprland#Using_a_script_to_change_wallpaper_every_X_minutes
4+
5+# This script will randomly go through the files of a directory, setting it
6+# up as the wallpaper at regular intervals
7+#
8+# NOTE: this script uses bash (not POSIX shell) for the RANDOM variable
9+
10+wallust_refresh=$HOME/.config/hypr/scripts/RefreshNoWaybar.sh
11+
12+focused_monitor=$(hyprctl monitors | awk '/^Monitor/{name=$2} /focused: yes/{print name}')
13+
14+if [[ $# -lt 1 ]] || [[ ! -d $1 ]]; then
15+ echo "Usage:
16+ $0 <dir containing images>"
17+ exit 1
18+fi
19+
20+# Edit below to control the images transition
21+export SWWW_TRANSITION_FPS=60
22+export SWWW_TRANSITION_TYPE=simple
23+
24+# This controls (in seconds) when to switch to the next image
25+INTERVAL=1800
26+
27+while true; do
28+ find "$1" \
29+ | while read -r img; do
30+ echo "$((RANDOM % 1000)):$img"
31+ done \
32+ | sort -n | cut -d':' -f2- \
33+ | while read -r img; do
34+ swww img -o $focused_monitor "$img"
35+ $wallust_refresh
36+ sleep $INTERVAL
37+
38+ done
39+done
+140-0UserScripts/WallpaperEffects.sh
@@ -0,0 +1,140 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
3+# Wallpaper Effects using ImageMagick (SUPER SHIFT W)
4+
5+# Variables
6+terminal=foot
7+wallpaper_current="$HOME/.config/hypr/wallpaper_effects/.wallpaper_current"
8+wallpaper_output="$HOME/.config/hypr/wallpaper_effects/.wallpaper_modified"
9+SCRIPTSDIR="$HOME/.config/hypr/scripts"
10+focused_monitor=$(hyprctl monitors -j | jq -r '.[] | select(.focused) | .name')
11+rofi_theme="$HOME/.config/rofi/config-wallpaper-effect.rasi"
12+
13+# Directory for swaync
14+iDIR="$HOME/.config/swaync/images"
15+iDIRi="$HOME/.config/swaync/icons"
16+
17+# swww transition config
18+FPS=60
19+TYPE="wipe"
20+DURATION=2
21+BEZIER=".43,1.19,1,.4"
22+SWWW_PARAMS="--transition-fps $FPS --transition-type $TYPE --transition-duration $DURATION --transition-bezier $BEZIER"
23+
24+# Define ImageMagick effects
25+declare -A effects=(
26+ ["No Effects"]="no-effects"
27+ ["Black & White"]="magick $wallpaper_current -colorspace gray -sigmoidal-contrast 10,40% $wallpaper_output"
28+ ["Blurred"]="magick $wallpaper_current -blur 0x10 $wallpaper_output"
29+ ["Charcoal"]="magick $wallpaper_current -charcoal 0x5 $wallpaper_output"
30+ ["Edge Detect"]="magick $wallpaper_current -edge 1 $wallpaper_output"
31+ ["Emboss"]="magick $wallpaper_current -emboss 0x5 $wallpaper_output"
32+ ["Frame Raised"]="magick $wallpaper_current +raise 150 $wallpaper_output"
33+ ["Frame Sunk"]="magick $wallpaper_current -raise 150 $wallpaper_output"
34+ ["Negate"]="magick $wallpaper_current -negate $wallpaper_output"
35+ ["Oil Paint"]="magick $wallpaper_current -paint 4 $wallpaper_output"
36+ ["Posterize"]="magick $wallpaper_current -posterize 4 $wallpaper_output"
37+ ["Polaroid"]="magick $wallpaper_current -polaroid 0 $wallpaper_output"
38+ ["Sepia Tone"]="magick $wallpaper_current -sepia-tone 65% $wallpaper_output"
39+ ["Solarize"]="magick $wallpaper_current -solarize 80% $wallpaper_output"
40+ ["Sharpen"]="magick $wallpaper_current -sharpen 0x5 $wallpaper_output"
41+ ["Vignette"]="magick $wallpaper_current -vignette 0x3 $wallpaper_output"
42+ ["Vignette-black"]="magick $wallpaper_current -background black -vignette 0x3 $wallpaper_output"
43+ ["Zoomed"]="magick $wallpaper_current -gravity Center -extent 1:1 $wallpaper_output"
44+)
45+
46+# Function to apply no effects
47+no-effects() {
48+ swww img -o "$focused_monitor" "$wallpaper_current" $SWWW_PARAMS &&
49+ wait $!
50+ wallust run "$wallpaper_current" -s &&
51+ wait $!
52+ # Refresh rofi, waybar, wallust palettes
53+ sleep 2
54+ "$SCRIPTSDIR/Refresh.sh"
55+
56+ notify-send -u low -i "$iDIR/ja.png" "No wallpaper" "effects applied"
57+ # copying wallpaper for rofi menu
58+ cp "$wallpaper_current" "$wallpaper_output"
59+}
60+
61+# Function to run rofi menu
62+main() {
63+ # Populate rofi menu options
64+ options=("No Effects")
65+ for effect in "${!effects[@]}"; do
66+ [[ "$effect" != "No Effects" ]] && options+=("$effect")
67+ done
68+
69+ choice=$(printf "%s\n" "${options[@]}" | LC_COLLATE=C sort | rofi -dmenu -i -config $rofi_theme)
70+
71+ # Process user choice
72+ if [[ -n "$choice" ]]; then
73+ if [[ "$choice" == "No Effects" ]]; then
74+ no-effects
75+ elif [[ "${effects[$choice]+exists}" ]]; then
76+ # Apply selected effect
77+ notify-send -u normal -i "$iDIR/ja.png" "Applying:" "$choice effects"
78+ eval "${effects[$choice]}"
79+
80+ # intial kill process
81+ for pid in swaybg mpvpaper; do
82+ killall -SIGUSR1 "$pid"
83+ done
84+
85+ sleep 1
86+ swww img -o "$focused_monitor" "$wallpaper_output" $SWWW_PARAMS &
87+
88+ sleep 2
89+
90+ wallust run "$wallpaper_output" -s &
91+ sleep 1
92+ # Refresh rofi, waybar, wallust palettes
93+ "${SCRIPTSDIR}/Refresh.sh"
94+ notify-send -u low -i "$iDIR/ja.png" "$choice" "effects applied"
95+ else
96+ echo "Effect '$choice' not recognized."
97+ fi
98+ fi
99+}
100+
101+# Check if rofi is already running and kill it
102+if pidof rofi > /dev/null; then
103+ pkill rofi
104+fi
105+
106+main
107+
108+sleep 1
109+
110+if [[ -n "$choice" ]]; then
111+ sddm_sequoia="/usr/share/sddm/themes/sequoia_2"
112+ if [ -d "$sddm_sequoia" ]; then
113+
114+ # Check if yad is running to avoid multiple yad notification
115+ if pidof yad > /dev/null; then
116+ killall yad
117+ fi
118+
119+ if yad --info --text="Set current wallpaper as SDDM background?\n\nNOTE: This only applies to SEQUOIA SDDM Theme" \
120+ --text-align=left \
121+ --title="SDDM Background" \
122+ --timeout=5 \
123+ --timeout-indicator=right \
124+ --button="yad-yes:0" \
125+ --button="yad-no:1" \
126+ ; then
127+
128+ # Check if terminal exists
129+ if ! command -v "$terminal" &>/dev/null; then
130+ notify-send -i "$iDIR/ja.png" "Missing $terminal" "Install $terminal to enable setting of wallpaper background"
131+ exit 1
132+ fi
133+
134+ # Open terminal and set the wallpaper
135+ $terminal -e bash -c "echo 'Enter your password to set wallpaper as SDDM Background'; \
136+ sudo cp -r $wallpaper_output '$sddm_sequoia/backgrounds/default' && \
137+ notify-send -i '$iDIR/ja.png' 'SDDM' 'Background SET'"
138+ fi
139+ fi
140+fi
+30-0UserScripts/WallpaperRandom.sh
@@ -0,0 +1,30 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
3+# Script for Random Wallpaper ( CTRL ALT W)
4+
5+wallDIR="$HOME/Pictures/wallpapers"
6+SCRIPTSDIR="$HOME/.config/hypr/scripts"
7+
8+focused_monitor=$(hyprctl monitors -j | jq -r '.[] | select(.focused) | .name')
9+
10+PICS=($(find -L ${wallDIR} -type f \( -name "*.jpg" -o -name "*.jpeg" -o -name "*.png" -o -name "*.pnm" -o -name "*.tga" -o -name "*.tiff" -o -name "*.webp" -o -name "*.bmp" -o -name "*.farbfeld" -o -name "*.gif" \)))
11+RANDOMPICS=${PICS[ $RANDOM % ${#PICS[@]} ]}
12+
13+
14+# Transition config
15+FPS=30
16+TYPE="random"
17+DURATION=1
18+BEZIER=".43,1.19,1,.4"
19+SWWW_PARAMS="--transition-fps $FPS --transition-type $TYPE --transition-duration $DURATION --transition-bezier $BEZIER"
20+
21+
22+swww query || swww-daemon --format xrgb && swww img -o $focused_monitor ${RANDOMPICS} $SWWW_PARAMS
23+
24+wait $!
25+"$SCRIPTSDIR/WallustSwww.sh" &&
26+
27+wait $!
28+sleep 2
29+"$SCRIPTSDIR/Refresh.sh"
30+
+238-0UserScripts/WallpaperSelect.sh
@@ -0,0 +1,238 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */
3+# This script for selecting wallpapers (SUPER W)
4+
5+# WALLPAPERS PATH
6+terminal=foot
7+wallDIR="$HOME/Pictures/wallpapers"
8+SCRIPTSDIR="$HOME/.config/hypr/scripts"
9+wallpaper_current="$HOME/.config/hypr/wallpaper_effects/.wallpaper_current"
10+
11+# Directory for swaync
12+iDIR="$HOME/.config/swaync/images"
13+iDIRi="$HOME/.config/swaync/icons"
14+
15+# swww transition config
16+FPS=60
17+TYPE="any"
18+DURATION=2
19+BEZIER=".43,1.19,1,.4"
20+SWWW_PARAMS="--transition-fps $FPS --transition-type $TYPE --transition-duration $DURATION --transition-bezier $BEZIER"
21+
22+# Check if package bc exists
23+if ! command -v bc &>/dev/null; then
24+ notify-send -i "$iDIR/error.png" "bc missing" "Install package bc first"
25+ exit 1
26+fi
27+
28+# Variables
29+rofi_theme="$HOME/.config/rofi/config-wallpaper.rasi"
30+focused_monitor=$(hyprctl monitors -j | jq -r '.[] | select(.focused) | .name')
31+
32+# Ensure focused_monitor is detected
33+if [[ -z "$focused_monitor" ]]; then
34+ notify-send -i "$iDIR/error.png" "E-R-R-O-R" "Could not detect focused monitor"
35+ exit 1
36+fi
37+
38+# Monitor details
39+scale_factor=$(hyprctl monitors -j | jq -r --arg mon "$focused_monitor" '.[] | select(.name == $mon) | .scale')
40+monitor_height=$(hyprctl monitors -j | jq -r --arg mon "$focused_monitor" '.[] | select(.name == $mon) | .height')
41+
42+icon_size=$(echo "scale=1; ($monitor_height * 3) / ($scale_factor * 150)" | bc)
43+adjusted_icon_size=$(echo "$icon_size" | awk '{if ($1 < 15) $1 = 20; if ($1 > 25) $1 = 25; print $1}')
44+rofi_override="element-icon{size:${adjusted_icon_size}%;}"
45+
46+# Kill existing wallpaper daemons for video
47+kill_wallpaper_for_video() {
48+ swww kill 2>/dev/null
49+ pkill mpvpaper 2>/dev/null
50+ pkill swaybg 2>/dev/null
51+ pkill hyprpaper 2>/dev/null
52+}
53+
54+# Kill existing wallpaper daemons for image
55+kill_wallpaper_for_image() {
56+ pkill mpvpaper 2>/dev/null
57+ pkill swaybg 2>/dev/null
58+ pkill hyprpaper 2>/dev/null
59+}
60+
61+# Retrieve wallpapers (both images & videos)
62+mapfile -d '' PICS < <(find -L "${wallDIR}" -type f \( \
63+ -iname "*.jpg" -o -iname "*.jpeg" -o -iname "*.png" -o -iname "*.gif" -o \
64+ -iname "*.bmp" -o -iname "*.tiff" -o -iname "*.webp" -o \
65+ -iname "*.mp4" -o -iname "*.mkv" -o -iname "*.mov" -o -iname "*.webm" \) -print0)
66+
67+RANDOM_PIC="${PICS[$((RANDOM % ${#PICS[@]}))]}"
68+RANDOM_PIC_NAME=". random"
69+
70+# Rofi command
71+rofi_command="rofi -i -show -dmenu -config $rofi_theme -theme-str $rofi_override"
72+
73+# Sorting Wallpapers
74+menu() {
75+ IFS=$'\n' sorted_options=($(sort <<<"${PICS[*]}"))
76+
77+ printf "%s\x00icon\x1f%s\n" "$RANDOM_PIC_NAME" "$RANDOM_PIC"
78+
79+ for pic_path in "${sorted_options[@]}"; do
80+ pic_name=$(basename "$pic_path")
81+ if [[ "$pic_name" =~ \.gif$ ]]; then
82+ cache_gif_image="$HOME/.cache/gif_preview/${pic_name}.png"
83+ if [[ ! -f "$cache_gif_image" ]]; then
84+ mkdir -p "$HOME/.cache/gif_preview"
85+ magick "$pic_path[0]" -resize 1920x1080 "$cache_gif_image"
86+ fi
87+ printf "%s\x00icon\x1f%s\n" "$pic_name" "$cache_gif_image"
88+ elif [[ "$pic_name" =~ \.(mp4|mkv|mov|webm|MP4|MKV|MOV|WEBM)$ ]]; then
89+ cache_preview_image="$HOME/.cache/video_preview/${pic_name}.png"
90+ if [[ ! -f "$cache_preview_image" ]]; then
91+ mkdir -p "$HOME/.cache/video_preview"
92+ ffmpeg -v error -y -i "$pic_path" -ss 00:00:01.000 -vframes 1 "$cache_preview_image"
93+ fi
94+ printf "%s\x00icon\x1f%s\n" "$pic_name" "$cache_preview_image"
95+ else
96+ printf "%s\x00icon\x1f%s\n" "$(echo "$pic_name" | cut -d. -f1)" "$pic_path"
97+ fi
98+ done
99+}
100+
101+# Offer SDDM Sequioa Wallpaper Option (only for non-video wallpapers)
102+set_sddm_wallpaper() {
103+ sleep 1
104+ sddm_sequoia="/usr/share/sddm/themes/sequoia_2"
105+
106+ if [ -d "$sddm_sequoia" ]; then
107+
108+ # Check if yad is running to avoid multiple notifications
109+ if pidof yad >/dev/null; then
110+ killall yad
111+ fi
112+
113+ if yad --info --text="Set current wallpaper as SDDM background?\n\nNOTE: This only applies to SEQUOIA SDDM Theme" \
114+ --text-align=left \
115+ --title="SDDM Background" \
116+ --timeout=5 \
117+ --timeout-indicator=right \
118+ --button="yes:0" \
119+ --button="no:1"; then
120+
121+ # Check if terminal exists
122+ if ! command -v "$terminal" &>/dev/null; then
123+ notify-send -i "$iDIR/error.png" "Missing $terminal" "Install $terminal to enable setting of wallpaper background"
124+ exit 1
125+ fi
126+
127+ # Open terminal to enter password
128+ $terminal -e bash -c "echo 'Enter your password to set wallpaper as SDDM Background'; \
129+ sudo cp -r $wallpaper_current '$sddm_sequoia/backgrounds/default' && \
130+ notify-send -i '$iDIR/ja.png' 'SDDM' 'Background SET'"
131+ fi
132+ fi
133+}
134+
135+modify_startup_config() {
136+ local selected_file="$1"
137+ local startup_config="$HOME/.config/hypr/UserConfigs/Startup_Apps.conf"
138+
139+ # Check if it's a live wallpaper (video)
140+ if [[ "$selected_file" =~ \.(mp4|mkv|mov|webm)$ ]]; then
141+ # For video wallpapers:
142+ sed -i '/^\s*exec-once\s*=\s*swww-daemon\s*--format\s*xrgb\s*$/s/^/\#/' "$startup_config"
143+ sed -i '/^\s*#\s*exec-once\s*=\s*mpvpaper\s*.*$/s/^#\s*//;' "$startup_config"
144+
145+ # Update the livewallpaper variable with the selected video path (using $HOME)
146+ selected_file="${selected_file/#$HOME/\$HOME}" # Replace /home/user with $HOME
147+ sed -i "s|^\$livewallpaper=.*|\$livewallpaper=\"$selected_file\"|" "$startup_config"
148+
149+ echo "Configured for live wallpaper (video)."
150+ else
151+ # For image wallpapers:
152+ sed -i '/^\s*#\s*exec-once\s*=\s*swww-daemon\s*--format\s*xrgb\s*$/s/^\s*#\s*//;' "$startup_config"
153+
154+ sed -i '/^\s*exec-once\s*=\s*mpvpaper\s*.*$/s/^/\#/' "$startup_config"
155+
156+ echo "Configured for static wallpaper (image)."
157+ fi
158+}
159+
160+# Apply Image Wallpaper
161+apply_image_wallpaper() {
162+ local image_path="$1"
163+
164+ kill_wallpaper_for_image
165+
166+ if ! pgrep -x "swww-daemon" >/dev/null; then
167+ echo "Starting swww-daemon..."
168+ swww-daemon --format xrgb &
169+ fi
170+
171+ swww img -o "$focused_monitor" "$image_path" $SWWW_PARAMS
172+
173+ # Run additional scripts
174+ "$SCRIPTSDIR/WallustSwww.sh"
175+ sleep 2
176+ "$SCRIPTSDIR/Refresh.sh"
177+ sleep 1
178+
179+ set_sddm_wallpaper
180+}
181+
182+apply_video_wallpaper() {
183+ local video_path="$1"
184+
185+ # Check if mpvpaper is installed
186+ if ! command -v mpvpaper &>/dev/null; then
187+ notify-send -i "$iDIR/error.png" "E-R-R-O-R" "mpvpaper not found"
188+ return 1
189+ fi
190+ kill_wallpaper_for_video
191+
192+ # Apply video wallpaper using mpvpaper
193+ mpvpaper '*' -o "load-scripts=no no-audio --loop" "$video_path" &
194+}
195+
196+# Main function
197+main() {
198+ choice=$(menu | $rofi_command)
199+ choice=$(echo "$choice" | xargs)
200+ RANDOM_PIC_NAME=$(echo "$RANDOM_PIC_NAME" | xargs)
201+
202+ if [[ -z "$choice" ]]; then
203+ echo "No choice selected. Exiting."
204+ exit 0
205+ fi
206+
207+ # Handle random selection correctly
208+ if [[ "$choice" == "$RANDOM_PIC_NAME" ]]; then
209+ choice=$(basename "$RANDOM_PIC")
210+ fi
211+
212+ choice_basename=$(basename "$choice" | sed 's/\(.*\)\.[^.]*$/\1/')
213+
214+ # Search for the selected file in the wallpapers directory, including subdirectories
215+ selected_file=$(find "$wallDIR" -iname "$choice_basename.*" -print -quit)
216+
217+ if [[ -z "$selected_file" ]]; then
218+ echo "File not found. Selected choice: $choice"
219+ exit 1
220+ fi
221+
222+ # Modify the Startup_Apps.conf file based on wallpaper type
223+ modify_startup_config "$selected_file"
224+
225+ # **CHECK FIRST** if it's a video or an image **before calling any function**
226+ if [[ "$selected_file" =~ \.(mp4|mkv|mov|webm|MP4|MKV|MOV|WEBM)$ ]]; then
227+ apply_video_wallpaper "$selected_file"
228+ else
229+ apply_image_wallpaper "$selected_file"
230+ fi
231+}
232+
233+# Check if rofi is already running
234+if pidof rofi >/dev/null; then
235+ pkill rofi
236+fi
237+
238+main
+146-0UserScripts/Weather.py
@@ -0,0 +1,146 @@
1+#!/usr/bin/env python3
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
3+# original code https://gist.github.com/Surendrajat/ff3876fd2166dd86fb71180f4e9342d7
4+# weather using python
5+
6+import requests
7+import json
8+import os
9+from pyquery import PyQuery # install using `pip install pyquery`
10+
11+# weather icons
12+weather_icons = {
13+ "sunnyDay": "󰖙",
14+ "clearNight": "󰖔",
15+ "cloudyFoggyDay": "",
16+ "cloudyFoggyNight": "",
17+ "rainyDay": "",
18+ "rainyNight": "",
19+ "snowyIcyDay": "",
20+ "snowyIcyNight": "",
21+ "severe": "",
22+ "default": "",
23+}
24+
25+
26+# Get current location based on IP address
27+def get_location():
28+ response = requests.get("https://ipinfo.io")
29+ data = response.json()
30+ loc = data["loc"].split(",")
31+ return float(loc[0]), float(loc[1])
32+
33+
34+# Get latitude and longitude
35+latitude, longitude = get_location()
36+
37+# Open-Meteo API endpoint
38+url = f"https://weather.com/en-PH/weather/today/l/{latitude},{longitude}?unit=f"
39+
40+# manual location_id
41+# NOTE: if you want to add manually, make sure you disable def get_location above
42+# to get your own location_id, go to https://weather.com & search your location.
43+# once you choose your location, you can see the location_id in the URL(64 chars long hex string)
44+# like this: https://weather.com/en-PH/weather/today/l/bca47d1099e762a012b9a139c36f30a0b1e647f69c0c4ac28b537e7ae9c1c200
45+# location_id = "bca47d1099e762a012b9a139c36f30a0b1e647f69c0c4ac28b537e7ae9c1c200" # TODO
46+
47+# NOTE to change to deg F, change the URL to your preffered location after weather.com
48+# Default is English-Philippines with Busan, South Korea as location_id
49+# get html page
50+# url = "https://weather.com/en-PH/weather/today/l/" + location_id
51+
52+html_data = PyQuery(url=url)
53+
54+# current temperature
55+temp = html_data("span[data-testid='TemperatureValue']").eq(0).text()
56+
57+# current status phrase
58+status = html_data("div[data-testid='wxPhrase']").text()
59+status = f"{status[:16]}.." if len(status) > 17 else status
60+
61+# status code
62+status_code = html_data("#regionHeader").attr("class").split(" ")[2].split("-")[2]
63+
64+# status icon
65+icon = (
66+ weather_icons[status_code]
67+ if status_code in weather_icons
68+ else weather_icons["default"]
69+)
70+
71+# temperature feels like
72+temp_feel = html_data(
73+ "div[data-testid='FeelsLikeSection'] > span > span[data-testid='TemperatureValue']"
74+).text()
75+temp_feel_text = f"Feels like {temp_feel}F"
76+
77+# min-max temperature
78+temp_min = (
79+ html_data("div[data-testid='wxData'] > span[data-testid='TemperatureValue']")
80+ .eq(1)
81+ .text()
82+)
83+temp_max = (
84+ html_data("div[data-testid='wxData'] > span[data-testid='TemperatureValue']")
85+ .eq(0)
86+ .text()
87+)
88+temp_min_max = f" {temp_min}\t\t {temp_max}"
89+
90+# wind speed
91+wind_speed = html_data("span[data-testid='Wind']").text().split("\n")[0]
92+wind_text = f" {wind_speed}"
93+
94+# humidity
95+humidity = html_data("span[data-testid='PercentageValue']").text()
96+humidity_text = f" {humidity}"
97+
98+# visibility
99+visibility = html_data("span[data-testid='VisibilityValue']").text()
100+visibility_text = f" {visibility}"
101+
102+# air quality index
103+air_quality_index = html_data("text[data-testid='DonutChartValue']").text()
104+
105+# hourly rain prediction
106+prediction = html_data("section[aria-label='Hourly Forecast']")(
107+ "div[data-testid='SegmentPrecipPercentage'] > span"
108+).text()
109+prediction = prediction.replace("Chance of Rain", "")
110+prediction = f"\n\n (hourly) {prediction}" if len(prediction) > 0 else prediction
111+
112+# tooltip text
113+tooltip_text = str.format(
114+ "\t\t{}\t\t\n{}\n{}\n{}\n\n{}\n{}\n{}{}",
115+ f'<span size="xx-large">{temp}</span>',
116+ f"<big> {icon}</big>",
117+ f"<b>{status}</b>",
118+ f"<small>{temp_feel_text}</small>",
119+ f"<b>{temp_min_max}</b>",
120+ f"{wind_text}\t{humidity_text}",
121+ f"{visibility_text}\tAQI {air_quality_index}",
122+ f"<i> {prediction}</i>",
123+)
124+
125+# print waybar module data
126+out_data = {
127+ "text": f"{icon} {temp}",
128+ "alt": status,
129+ "tooltip": tooltip_text,
130+ "class": status_code,
131+}
132+print(json.dumps(out_data))
133+
134+simple_weather = (
135+ f"{icon} {status}\n"
136+ + f" {temp} ({temp_feel_text})\n"
137+ + f"{wind_text} \n"
138+ + f"{humidity_text} \n"
139+ + f"{visibility_text} AQI{air_quality_index}\n"
140+)
141+
142+try:
143+ with open(os.path.expanduser("~/.cache/.weather_cache"), "w") as file:
144+ file.write(simple_weather)
145+except Exception as e:
146+ print(f"Error writing to cache: {e}")
+87-0UserScripts/Weather.sh
@@ -0,0 +1,87 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
3+# weather info from wttr. https://github.com/chubin/wttr.in
4+# Remember to add city
5+
6+city=
7+cachedir="~/.cache/rbn"
8+cachefile=${0##*/}-$1
9+
10+if [ ! -d $cachedir ]; then
11+ mkdir -p $cachedir
12+fi
13+
14+if [ ! -f $cachedir/$cachefile ]; then
15+ touch $cachedir/$cachefile
16+fi
17+
18+# Save current IFS
19+SAVEIFS=$IFS
20+# Change IFS to new line.
21+IFS=$'\n'
22+
23+cacheage=$(($(date +%s) - $(stat -c '%Y' "$cachedir/$cachefile")))
24+if [ $cacheage -gt 1740 ] || [ ! -s $cachedir/$cachefile ]; then
25+ data=($(curl -s "https://en.wttr.in/${city}${1}\?0qnT&u" 2>&1))
26+ echo ${data[0]} | cut -f1 -d, >$cachedir/$cachefile
27+ echo ${data[1]} | sed -E 's/^.{15}//' >>$cachedir/$cachefile
28+ echo ${data[2]} | sed -E 's/^.{15}//' >>$cachedir/$cachefile
29+fi
30+
31+weather=($(cat $cachedir/$cachefile))
32+
33+# Restore IFSClear
34+IFS=$SAVEIFS
35+
36+temperature=$(echo ${weather[2]} | sed -E 's/([[:digit:]]+)\.\./\1 to /g')
37+
38+#echo ${weather[1]##*,}
39+
40+# https://fontawesome.com/icons?s=solid&c=weather
41+case $(echo ${weather[1]##*,} | tr '[:upper:]' '[:lower:]') in
42+"clear" | "sunny")
43+ condition=""
44+ ;;
45+"partly cloudy")
46+ condition="󰖕"
47+ ;;
48+"cloudy")
49+ condition=""
50+ ;;
51+"overcast")
52+ condition=""
53+ ;;
54+"fog" | "freezing fog")
55+ condition=""
56+ ;;
57+"patchy rain possible" | "patchy light drizzle" | "light drizzle" | "patchy light rain" | "light rain" | "light rain shower" | "mist" | "rain")
58+ condition="󰼳"
59+ ;;
60+"moderate rain at times" | "moderate rain" | "heavy rain at times" | "heavy rain" | "moderate or heavy rain shower" | "torrential rain shower" | "rain shower")
61+ condition=""
62+ ;;
63+"patchy snow possible" | "patchy sleet possible" | "patchy freezing drizzle possible" | "freezing drizzle" | "heavy freezing drizzle" | "light freezing rain" | "moderate or heavy freezing rain" | "light sleet" | "ice pellets" | "light sleet showers" | "moderate or heavy sleet showers")
64+ condition="󰼴"
65+ ;;
66+"blowing snow" | "moderate or heavy sleet" | "patchy light snow" | "light snow" | "light snow showers")
67+ condition="󰙿"
68+ ;;
69+"blizzard" | "patchy moderate snow" | "moderate snow" | "patchy heavy snow" | "heavy snow" | "moderate or heavy snow with thunder" | "moderate or heavy snow showers")
70+ condition=""
71+ ;;
72+"thundery outbreaks possible" | "patchy light rain with thunder" | "moderate or heavy rain with thunder" | "patchy light snow with thunder")
73+ condition=""
74+ ;;
75+*)
76+ condition=""
77+ echo -e "{\"text\":\""$condition"\", \"alt\":\""${weather[0]}"\", \"tooltip\":\""${weather[0]}: $temperature ${weather[1]}"\"}"
78+ ;;
79+esac
80+
81+#echo $temp $condition
82+
83+echo -e "{\"text\":\""$temperature $condition"\", \"alt\":\""${weather[0]}"\", \"tooltip\":\""${weather[0]}: $temperature ${weather[1]}"\"}"
84+
85+cached_weather=" $temperature \n$condition ${weather[1]}"
86+
87+echo -e $cached_weather >"~/.cache/.weather_cache"
+69-0UserScripts/ZshChangeTheme.sh
@@ -0,0 +1,69 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
3+# Script for Oh my ZSH theme ( CTRL SHIFT O)
4+
5+# preview of theme can be view here: https://github.com/ohmyzsh/ohmyzsh/wiki/Themes
6+# after choosing theme, TTY need to be closed and re-open
7+
8+# Variables
9+iDIR="$HOME/.config/swaync/images"
10+rofi_theme="$HOME/.config/rofi/config-zsh-theme.rasi"
11+
12+if [ -n "$(grep -i nixos < /etc/os-release)" ]; then
13+ notify-send -i "$iDIR/note.png" "NOT Supported" "Sorry NixOS does not support this KooL feature"
14+ exit 1
15+fi
16+
17+themes_dir="$HOME/.oh-my-zsh/themes"
18+file_extension=".zsh-theme"
19+
20+
21+themes_array=($(find -L "$themes_dir" -type f -name "*$file_extension" -exec basename {} \; | sed -e "s/$file_extension//"))
22+
23+# Add "Random" option to the beginning of the array
24+themes_array=("Random" "${themes_array[@]}")
25+
26+rofi_command="rofi -i -dmenu -config $rofi_theme"
27+
28+menu() {
29+ for theme in "${themes_array[@]}"; do
30+ echo "$theme"
31+ done
32+}
33+
34+main() {
35+ choice=$(menu | ${rofi_command})
36+
37+ # if nothing selected, script won't change anything
38+ if [ -z "$choice" ]; then
39+ exit 0
40+ fi
41+
42+ zsh_path="$HOME/.zshrc"
43+ var_name="ZSH_THEME"
44+
45+ if [[ "$choice" == "Random" ]]; then
46+ # Pick a random theme from the original themes_array (excluding "Random")
47+ random_theme=${themes_array[$((RANDOM % (${#themes_array[@]} - 1) + 1))]}
48+ theme_to_set="$random_theme"
49+ notify-send -i "$iDIR/ja.png" "Random theme:" "selected: $random_theme"
50+ else
51+ # Set theme to the selected choice
52+ theme_to_set="$choice"
53+ notify-send -i "$iDIR/ja.png" "Theme selected:" "$choice"
54+ fi
55+
56+ if [ -f "$zsh_path" ]; then
57+ sed -i "s/^$var_name=.*/$var_name=\"$theme_to_set\"/" "$zsh_path"
58+ notify-send -i "$iDIR/ja.png" "OMZ theme" "applied. restart your terminal"
59+ else
60+ notify-send -i "$iDIR/error.png" "E-R-R-O-R" "~.zshrc file not found!"
61+ fi
62+}
63+
64+# Check if rofi is already running
65+if pidof rofi > /dev/null; then
66+ pkill rofi
67+fi
68+
69+main
+26-0animations/00-default.conf
@@ -0,0 +1,26 @@
1+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
2+
3+animations {
4+ enabled = yes
5+
6+ bezier = wind, 0.05, 0.9, 0.1, 1.05
7+ bezier = winIn, 0.1, 1.1, 0.1, 1.1
8+ bezier = winOut, 0.3, -0.3, 0, 1
9+ bezier = liner, 1, 1, 1, 1
10+ bezier = overshot, 0.05, 0.9, 0.1, 1.05
11+ bezier = smoothOut, 0.5, 0, 0.99, 0.99
12+ bezier = smoothIn, 0.5, -0.5, 0.68, 1.5
13+
14+ animation = windows, 1, 6, wind, slide
15+ animation = windowsIn, 1, 5, winIn, slide
16+ animation = windowsOut, 1, 3, smoothOut, slide
17+ animation = windowsMove, 1, 5, wind, slide
18+ animation = border, 1, 1, liner
19+ animation = borderangle, 1, 180, liner, loop #used by rainbow borders and rotating colors
20+ animation = fade, 1, 3, smoothOut
21+ animation = workspaces, 1, 5, overshot
22+
23+ # animations for -git or version >0.42.0
24+ animation = workspacesIn, 1, 5, winIn, slide
25+ animation = workspacesOut, 1, 5, winOut, slide
26+}
+27-0animations/01-default - v2.conf
@@ -0,0 +1,27 @@
1+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
2+
3+# old animations
4+
5+animations {
6+ enabled = yes
7+
8+ bezier = myBezier, 0.05, 0.9, 0.1, 1.05
9+ bezier = linear, 0.0, 0.0, 1.0, 1.0
10+ bezier = wind, 0.05, 0.9, 0.1, 1.05
11+ bezier = winIn, 0.1, 1.1, 0.1, 1.1
12+ bezier = winOut, 0.3, -0.3, 0, 1
13+ bezier = slow, 0, 0.85, 0.3, 1
14+ bezier = overshot, 0.7, 0.6, 0.1, 1.1
15+ bezier = bounce, 1.1, 1.6, 0.1, 0.85
16+ bezier = sligshot, 1, -1, 0.15, 1.25
17+ bezier = nice, 0, 6.9, 0.5, -4.20
18+
19+ animation = windowsIn, 1, 5, slow, popin
20+ animation = windowsOut, 1, 5, winOut, popin
21+ animation = windowsMove, 1, 5, wind, slide
22+ animation = border, 1, 10, linear
23+ animation = borderangle, 1, 180, linear, loop #used by rainbow borders and rotating colors
24+ animation = fade, 1, 5, overshot
25+ animation = workspaces, 1, 5, wind
26+ animation = windows, 1, 5, bounce, popin
27+}
+5-0animations/03- Disable Animation.conf
@@ -0,0 +1,5 @@
1+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
2+
3+animations {
4+ enabled = no
5+}
+40-0animations/END-4.conf
@@ -0,0 +1,40 @@
1+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
2+#
3+# name "End-4"
4+# credit https://github.com/end-4/dots-hyprland
5+
6+animations {
7+ enabled = true
8+ # Animation curves
9+
10+ bezier = linear, 0, 0, 1, 1
11+ bezier = md3_standard, 0.2, 0, 0, 1
12+ bezier = md3_decel, 0.05, 0.7, 0.1, 1
13+ bezier = md3_accel, 0.3, 0, 0.8, 0.15
14+ bezier = overshot, 0.05, 0.9, 0.1, 1.1
15+ bezier = crazyshot, 0.1, 1.5, 0.76, 0.92
16+ bezier = hyprnostretch, 0.05, 0.9, 0.1, 1.0
17+ bezier = menu_decel, 0.1, 1, 0, 1
18+ bezier = menu_accel, 0.38, 0.04, 1, 0.07
19+ bezier = easeInOutCirc, 0.85, 0, 0.15, 1
20+ bezier = easeOutCirc, 0, 0.55, 0.45, 1
21+ bezier = easeOutExpo, 0.16, 1, 0.3, 1
22+ bezier = softAcDecel, 0.26, 0.26, 0.15, 1
23+ bezier = md2, 0.4, 0, 0.2, 1 # use with .2s duration
24+ # Animation configs
25+ animation = windows, 1, 3, md3_decel, popin 60%
26+ animation = windowsIn, 1, 3, md3_decel, popin 60%
27+ animation = windowsOut, 1, 3, md3_accel, popin 60%
28+ animation = border, 1, 10, default
29+ animation = fade, 1, 3, md3_decel
30+ # animation = layers, 1, 2, md3_decel, slide
31+ animation = layersIn, 1, 3, menu_decel, slide
32+ animation = layersOut, 1, 1.6, menu_accel
33+ animation = fadeLayersIn, 1, 2, menu_decel
34+ animation = fadeLayersOut, 1, 4.5, menu_accel
35+ animation = workspaces, 1, 7, menu_decel, slide
36+ # animation = workspaces, 1, 2.5, softAcDecel, slide
37+ # animation = workspaces, 1, 7, menu_decel, slidefade 15%
38+ # animation = specialWorkspace, 1, 3, md3_decel, slidefadevert 15%
39+ animation = specialWorkspace, 1, 3, md3_decel, slidevert
40+}
+34-0animations/HYDE - Vertical.conf
@@ -0,0 +1,34 @@
1+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
2+#
3+# name "Vertical"
4+# credit https://github.com/prasanthrangan/hyprdots
5+
6+animations {
7+ enabled = yes
8+
9+ bezier = fluent_decel, 0, 0.2, 0.4, 1
10+ bezier = easeOutCirc, 0, 0.55, 0.45, 1
11+ bezier = easeOutCubic, 0.33, 1, 0.68, 1
12+ bezier = easeinoutsine, 0.37, 0, 0.63, 1
13+
14+ # Windows
15+ animation = windowsIn, 1, 1.5, easeinoutsine, popin 60% # window open
16+ animation = windowsOut, 1, 1.5, easeOutCubic, popin 60% # window close.
17+ animation = windowsMove, 1, 1.5, easeinoutsine, slide # everything in between, moving, dragging, resizing.
18+
19+ # Fading
20+ animation = fade, 1, 2.5, fluent_decel
21+
22+ animation = fadeLayersIn, 0
23+ animation = border, 0
24+
25+
26+ # Layers
27+ animation = layers, 1, 1.5, easeinoutsine, popin
28+
29+ # Workspaces
30+ #animation = workspaces, 1, 3, fluent_decel, slidefade 30% # styles: slide, slidevert, fade, slidefade, slidefadevert
31+ animation = workspaces, 1, 3, fluent_decel, slidefadevert 30% # styles: slide, slidevert, fade, slidefade, slidefadevert
32+
33+ animation = specialWorkspace, 1, 2, fluent_decel, slidefade 10%
34+}
+21-0animations/HYDE - default.conf
@@ -0,0 +1,21 @@
1+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
2+#
3+# name "Default"
4+# credit https://github.com/prasanthrangan/hyprdots
5+
6+animations {
7+ enabled = yes
8+ bezier = wind, 0.05, 0.9, 0.1, 1.05
9+ bezier = winIn, 0.1, 1.1, 0.1, 1.1
10+ bezier = winOut, 0.3, -0.3, 0, 1
11+ bezier = liner, 1, 1, 1, 1
12+ animation = windows, 1, 6, wind, slide
13+ animation = windowsIn, 1, 6, winIn, slide
14+ animation = windowsOut, 1, 5, winOut, slide
15+ animation = windowsMove, 1, 5, wind, slide
16+ animation = border, 1, 1, liner
17+ animation = borderangle, 1, 30, liner, once
18+ animation = fade, 1, 10, default
19+ animation = workspaces, 1, 5, wind
20+ animation = specialWorkspace, 1, 5, wind, slidevert
21+}
+27-0animations/HYDE - minimal-1.conf
@@ -0,0 +1,27 @@
1+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
2+#
3+# # name "Minimal-1"
4+# credit https://github.com/prasanthrangan/hyprdots-
5+
6+animations {
7+ enabled = true
8+
9+ # █▄▄ █▀▀ ▀█ █ █▀▀ █▀█   █▀▀ █░█ █▀█ █░█ █▀▀
10+ # █▄█ ██▄ █▄ █ ██▄ █▀▄   █▄▄ █▄█ █▀▄ ▀▄▀ ██▄
11+ bezier = wind, 0.05, 0.9, 0.1, 1.05
12+ bezier = winIn, 0.1, 1.1, 0.1, 1.1
13+ bezier = winOut, 0.3, -0.3, 0, 1
14+ bezier = liner, 1, 1, 1, 1
15+
16+
17+ #▄▀█ █▄░█ █ █▀▄▀█ ▄▀█ ▀█▀ █ █▀█ █▄░█
18+ #█▀█ █░▀█ █ █░▀░█ █▀█ ░█░ █ █▄█ █░▀█
19+ animation = windows, 1, 6, wind, slide
20+ animation = windowsIn, 1, 6, winIn, slide
21+ animation = windowsOut, 1, 5, winOut, slide
22+ animation = windowsMove, 1, 5, wind, slide
23+ animation = border, 1, 1, liner
24+ animation = borderangle, 1, 30, liner, once
25+ animation = fade, 1, 10, default
26+ animation = workspaces, 1, 5, wind
27+}
+16-0animations/HYDE - minimal-2.conf
@@ -0,0 +1,16 @@
1+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
2+#
3+# # name "Minimal-2"
4+# credit https://github.com/prasanthrangan/hyprdots
5+
6+animations {
7+ enabled = yes
8+
9+ bezier = quart, 0.25, 1, 0.5, 1
10+
11+ animation = windows, 1, 6, quart, slide
12+ animation = border, 1, 6, quart
13+ animation = borderangle, 1, 6, quart
14+ animation = fade, 1, 6, quart
15+ animation = workspaces, 1, 6, quart
16+}
+41-0animations/HYDE - optimized.conf
@@ -0,0 +1,41 @@
1+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
2+#
3+# name "Optimized"
4+# credit https://github.com/prasanthrangan/hyprdots
5+
6+animations {
7+ enabled = true
8+ bezier = wind, 0.05, 0.85, 0.03, 0.97
9+ bezier = winIn, 0.07, 0.88, 0.04, 0.99
10+ bezier = winOut, 0.20, -0.15, 0, 1
11+ bezier = liner, 1, 1, 1, 1
12+ bezier = md3_standard, 0.12, 0, 0, 1
13+ bezier = md3_decel, 0.05, 0.80, 0.10, 0.97
14+ bezier = md3_accel, 0.20, 0, 0.80, 0.08
15+ bezier = overshot, 0.05, 0.85, 0.07, 1.04
16+ bezier = crazyshot, 0.1, 1.22, 0.68, 0.98
17+ bezier = hyprnostretch, 0.05, 0.82, 0.03, 0.94
18+ bezier = menu_decel, 0.05, 0.82, 0, 1
19+ bezier = menu_accel, 0.20, 0, 0.82, 0.10
20+ bezier = easeInOutCirc, 0.75, 0, 0.15, 1
21+ bezier = easeOutCirc, 0, 0.48, 0.38, 1
22+ bezier = easeOutExpo, 0.10, 0.94, 0.23, 0.98
23+ bezier = softAcDecel, 0.20, 0.20, 0.15, 1
24+ bezier = md2, 0.30, 0, 0.15, 1
25+
26+ bezier = OutBack, 0.28, 1.40, 0.58, 1
27+ bezier = easeInOutCirc, 0.78, 0, 0.15, 1
28+
29+ animation = border, 1, 1.6, liner
30+ animation = borderangle, 1, 82, liner, once
31+ animation = windowsIn, 1, 3.2, winIn, slide
32+ animation = windowsOut, 1, 2.8, easeOutCirc
33+ animation = windowsMove, 1, 3.0, wind, slide
34+ animation = fade, 1, 1.8, md3_decel
35+ animation = layersIn, 1, 1.8, menu_decel, slide
36+ animation = layersOut, 1, 1.5, menu_accel
37+ animation = fadeLayersIn, 1, 1.6, menu_decel
38+ animation = fadeLayersOut, 1, 1.8, menu_accel
39+ animation = workspaces, 1, 4.0, menu_decel, slide
40+ animation = specialWorkspace, 1, 2.3, md3_decel, slidefadevert 15%
41+}
+15-0animations/ML4W - classic.conf
@@ -0,0 +1,15 @@
1+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
2+#
3+# name "Classic"
4+# credit https://github.com/mylinuxforwork/dotfiles
5+
6+animations {
7+ enabled = true
8+ bezier = myBezier, 0.05, 0.9, 0.1, 1.05
9+ animation = windows, 1, 7, myBezier
10+ animation = windowsOut, 1, 7, default, popin 80%
11+ animation = border, 1, 10, default
12+ animation = borderangle, 1, 8, default
13+ animation = fade, 1, 7, default
14+ animation = workspaces, 1, 6, default
15+}
+20-0animations/ML4W - dynamic.conf
@@ -0,0 +1,20 @@
1+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
2+#
3+# name "Dynamic"
4+# credit https://github.com/mylinuxforwork/dotfiles
5+
6+animations {
7+ enabled = true
8+ bezier = wind, 0.05, 0.9, 0.1, 1.05
9+ bezier = winIn, 0.1, 1.1, 0.1, 1.1
10+ bezier = winOut, 0.3, -0.3, 0, 1
11+ bezier = liner, 1, 1, 1, 1
12+ animation = windows, 1, 6, wind, slide
13+ animation = windowsIn, 1, 6, winIn, slide
14+ animation = windowsOut, 1, 5, winOut, slide
15+ animation = windowsMove, 1, 5, wind, slide
16+ animation = border, 1, 1, liner
17+ animation = borderangle, 1, 30, liner, loop
18+ animation = fade, 1, 10, default
19+ animation = workspaces, 1, 5, wind
20+}
+24-0animations/ML4W - fast.conf
@@ -0,0 +1,24 @@
1+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
2+#
3+# name "Fast"
4+# credit https://github.com/mylinuxforwork/dotfiles
5+
6+animations {
7+ enabled = true
8+ bezier = linear, 0, 0, 1, 1
9+ bezier = md3_standard, 0.2, 0, 0, 1
10+ bezier = md3_decel, 0.05, 0.7, 0.1, 1
11+ bezier = md3_accel, 0.3, 0, 0.8, 0.15
12+ bezier = overshot, 0.05, 0.9, 0.1, 1.1
13+ bezier = crazyshot, 0.1, 1.5, 0.76, 0.92
14+ bezier = hyprnostretch, 0.05, 0.9, 0.1, 1.0
15+ bezier = fluent_decel, 0.1, 1, 0, 1
16+ bezier = easeInOutCirc, 0.85, 0, 0.15, 1
17+ bezier = easeOutCirc, 0, 0.55, 0.45, 1
18+ bezier = easeOutExpo, 0.16, 1, 0.3, 1
19+ animation = windows, 1, 3, md3_decel, popin 60%
20+ animation = border, 1, 10, default
21+ animation = fade, 1, 2.5, md3_decel
22+ animation = workspaces, 1, 3.5, easeOutExpo, slide
23+ animation = specialWorkspace, 1, 3, md3_decel, slidevert
24+}
+20-0animations/ML4W - high.conf
@@ -0,0 +1,20 @@
1+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
2+#
3+# name "High"
4+# credit https://github.com/mylinuxforwork/dotfiles
5+
6+animations {
7+ enabled = true
8+ bezier = wind, 0.05, 0.9, 0.1, 1.05
9+ bezier = winIn, 0.1, 1.1, 0.1, 1.1
10+ bezier = winOut, 0.3, -0.3, 0, 1
11+ bezier = liner, 1, 1, 1, 1
12+ animation = windows, 1, 6, wind, slide
13+ animation = windowsIn, 1, 6, winIn, slide
14+ animation = windowsOut, 1, 5, winOut, slide
15+ animation = windowsMove, 1, 5, wind, slide
16+ animation = border, 1, 1, liner
17+ animation = borderangle, 1, 30, liner, once
18+ animation = fade, 1, 10, default
19+ animation = workspaces, 1, 5, wind
20+}
+20-0animations/ML4W - moving.conf
@@ -0,0 +1,20 @@
1+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
2+#
3+# name "Moving"
4+# credit https://github.com/mylinuxforwork/dotfiles
5+
6+
7+animations {
8+ enabled = true
9+ bezier = overshot, 0.05, 0.9, 0.1, 1.05
10+ bezier = smoothOut, 0.5, 0, 0.99, 0.99
11+ bezier = smoothIn, 0.5, -0.5, 0.68, 1.5
12+ animation = windows, 1, 5, overshot, slide
13+ animation = windowsOut, 1, 3, smoothOut
14+ animation = windowsIn, 1, 3, smoothOut
15+ animation = windowsMove, 1, 4, smoothIn, slide
16+ animation = border, 1, 5, default
17+ animation = fade, 1, 5, smoothIn
18+ animation = fadeDim, 1, 5, smoothIn
19+ animation = workspaces, 1, 6, default
20+}
+15-0animations/ML4W - standard.conf
@@ -0,0 +1,15 @@
1+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
2+#
3+# name "Standard"
4+# credit https://github.com/mylinuxforwork/dotfiles
5+
6+animations {
7+ enabled = true
8+ bezier = myBezier, 0.05, 0.9, 0.1, 1.05
9+ animation = windows, 1, 7, myBezier
10+ animation = windowsOut, 1, 7, default, popin 80%
11+ animation = border, 1, 10, default
12+ animation = borderangle, 1, 8, default
13+ animation = fade, 1, 7, default
14+ animation = workspaces, 1, 6, default
15+}
+55-0animations/Mahaveer - me-1.conf
@@ -0,0 +1,55 @@
1+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
2+#
3+# name "Me-1"
4+# credit https://github.com/mahaveergurjar
5+
6+animations {
7+ enabled = true
8+ # Animation curves
9+ bezier = wind, 0.05, 0.9, 0.1, 1.05
10+ bezier = winIn, 0.1, 1.1, 0.1, 1.1
11+ bezier = winOut, 0.3, -0.3, 0, 1
12+ bezier = liner, 1, 1, 1, 1
13+ # bezier = linear, 0, 0, 1, 1
14+ bezier = md3_standard, 0.2, 0, 0, 1
15+ bezier = md3_decel, 0.05, 0.7, 0.1, 1
16+ bezier = md3_accel, 0.3, 0, 0.8, 0.15
17+ bezier = overshot, 0.05, 0.9, 0.1, 1.1
18+ bezier = crazyshot, 0.1, 1.5, 0.76, 0.92
19+ bezier = hyprnostretch, 0.05, 0.9, 0.1, 1.0
20+ bezier = menu_decel, 0.1, 1, 0, 1
21+ bezier = menu_accel, 0.38, 0.04, 1, 0.07
22+ bezier = easeInOutCirc, 0.85, 0, 0.15, 1
23+ bezier = easeOutCirc, 0, 0.55, 0.45, 1
24+ bezier = easeOutExpo, 0.16, 1, 0.3, 1
25+ bezier = softAcDecel, 0.26, 0.26, 0.15, 1
26+ bezier = md2, 0.4, 0, 0.2, 1 # use with .2s duration
27+
28+ # Animation configs
29+ # animation = windows, 1, 3, md3_decel, popin 60%
30+ # animation = windowsIn, 1, 3, md3_decel, popin 60%
31+ # animation = windowsOut, 1, 3, md3_accel, popin 60%
32+ # animation = windows, 1, 6, wind, slide
33+ animation = border, 1, 1, liner
34+ animation = borderangle, 1, 30, liner, once
35+ animation = windows, 1, 6, wind, slide
36+ animation = windowsIn, 1, 6, winIn, slide
37+ animation = windowsOut, 1, 5, winOut, slide
38+ animation = windowsMove, 1, 5, wind, slide
39+
40+ # animation = border, 1, 10, default
41+ animation = fade, 1, 3, md3_decel
42+ # animation = layers, 1, 2, md3_decel, slide
43+ animation = layersIn, 1, 3, menu_decel, slide
44+ animation = layersOut, 1, 1.6, menu_accel
45+ animation = fadeLayersIn, 1, 2, menu_decel
46+ animation = fadeLayersOut, 1, 4.5, menu_accel
47+ animation = workspaces, 1, 7, menu_decel, slide
48+ animation = workspaces, 1, 5, wind
49+ # animation = workspaces, 1, 2.5, softAcDecel, slide
50+ # animation = workspaces, 1, 7, menu_decel, slidefade 15%
51+ animation = specialWorkspace, 1, 3, md3_decel, slidefadevert 15%
52+ animation = specialWorkspace, 1, 3, md3_decel, slidevert
53+}
54+
55+
+30-0animations/Mahaveer - me-2.conf
@@ -0,0 +1,30 @@
1+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
2+#
3+# name "Me-2"
4+# credit https://github.com/mahaveergurjar
5+
6+
7+animations {
8+ enabled = yes
9+
10+ bezier = wind, 0.05, 0.9, 0.1, 1.05
11+ bezier = winIn, 0.1, 1.1, 0.1, 1.1
12+ bezier = winOut, 0.3, -0.3, 0, 1
13+ bezier = liner, 1, 1, 1, 1
14+ bezier = overshot, 0.05, 0.9, 0.1, 1.05
15+ bezier = smoothOut, 0.5, 0, 0.99, 0.99
16+ bezier = smoothIn, 0.5, -0.5, 0.68, 1.5
17+
18+ animation = windows, 1, 6, wind, slide
19+ animation = windowsIn, 1, 5, winIn, slide
20+ animation = windowsOut, 1, 3, smoothOut, slide
21+ animation = windowsMove, 1, 5, wind, slide
22+ animation = border, 1, 1, liner
23+ animation = borderangle, 1, 180, liner, loop #used by rainbow borders and rotating colors
24+ animation = fade, 1, 3, smoothOut
25+ animation = workspaces, 1, 5, overshot
26+
27+ # animations for -git or version >0.42.0
28+ animation = workspacesIn, 1, 5, winIn, slide
29+ animation = workspacesOut, 1, 5, winOut, slide
30+}
+8-0application-style.conf
@@ -0,0 +1,8 @@
1+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
2+# as per Hyprland wiki: hyprland-qt-support provides a QML style for hypr* qt6 apps
3+
4+roundess = 2
5+
6+border_width = 0
7+
8+reduce_motion = false
+149-0configs/Keybinds.conf
@@ -0,0 +1,149 @@
1+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
2+# Default Keybinds
3+# visit https://wiki.hyprland.org/Configuring/Binds/ for more info
4+
5+# /* ---- ✴️ Variables ✴️ ---- */ #
6+$mainMod = SUPER
7+$scriptsDir = $HOME/.config/hypr/scripts
8+$UserConfigs = $HOME/.config/hypr/UserConfigs
9+$UserScripts = $HOME/.config/hypr/UserScripts
10+
11+bind = CTRL ALT, Delete, exec, hyprctl dispatch exit 0 # exit Hyprland
12+bind = $mainMod, Q, killactive, # close active (not kill)
13+bind = $mainMod SHIFT, Q, exec, $scriptsDir/KillActiveProcess.sh # Kill active process
14+bind = CTRL ALT, L, exec, $scriptsDir/LockScreen.sh # screen lock
15+bind = CTRL ALT, P, exec, $scriptsDir/Wlogout.sh # power menu
16+bind = $mainMod SHIFT, N, exec, swaync-client -t -sw # swayNC notification panel
17+bind = $mainMod SHIFT, E, exec, $scriptsDir/Kool_Quick_Settings.sh # Settings Menu KooL Hyprland Settings
18+
19+# Master Layout
20+bind = $mainMod CTRL, D, layoutmsg, removemaster
21+bind = $mainMod, I, layoutmsg, addmaster
22+bind = $mainMod, J, layoutmsg, cyclenext
23+bind = $mainMod, K, layoutmsg, cycleprev
24+bind = $mainMod CTRL, Return, layoutmsg, swapwithmaster
25+
26+# Dwindle Layout
27+bind = $mainMod SHIFT, I, togglesplit # only works on dwindle layout
28+bind = $mainMod, P, pseudo, # dwindle
29+
30+# Works on either layout (Master or Dwindle)
31+bind = $mainMod, M, exec, hyprctl dispatch splitratio 0.3
32+
33+# group
34+bind = $mainMod, G, togglegroup # toggle group
35+bind = $mainMod CTRL, tab, changegroupactive # change focus to another window
36+
37+ # Cycle windows if floating bring to top
38+bind = ALT, tab, cyclenext
39+bind = ALT, tab, bringactivetotop
40+
41+# Special Keys / Hot Keys
42+bindel = , xf86audioraisevolume, exec, $scriptsDir/Volume.sh --inc # volume up
43+bindel = , xf86audiolowervolume, exec, $scriptsDir/Volume.sh --dec # volume down
44+bindl = , xf86AudioMicMute, exec, $scriptsDir/Volume.sh --toggle-mic # mic mute
45+bindl = , xf86audiomute, exec, $scriptsDir/Volume.sh --toggle # mute
46+bindl = , xf86Sleep, exec, systemctl suspend # sleep button
47+bindl = , xf86Rfkill, exec, $scriptsDir/AirplaneMode.sh # Airplane mode
48+
49+# media controls using keyboards
50+bindl = , xf86AudioPlayPause, exec, $scriptsDir/MediaCtrl.sh --pause
51+bindl = , xf86AudioPause, exec, $scriptsDir/MediaCtrl.sh --pause
52+bindl = , xf86AudioPlay, exec, $scriptsDir/MediaCtrl.sh --pause
53+bindl = , xf86AudioNext, exec, $scriptsDir/MediaCtrl.sh --nxt
54+bindl = , xf86AudioPrev, exec, $scriptsDir/MediaCtrl.sh --prv
55+bindl = , xf86audiostop, exec, $scriptsDir/MediaCtrl.sh --stop
56+
57+# Screenshot keybindings NOTE: You may need to press Fn key as well
58+bind = $mainMod, F10, exec, $scriptsDir/ScreenShot.sh --now # screenshot
59+bind = $mainMod SHIFT, F10, exec, $scriptsDir/ScreenShot.sh --area # screenshot (area)
60+bind = $mainMod CTRL, F10, exec, $scriptsDir/ScreenShot.sh --in5 # screenshot (5 secs delay)
61+bind = $mainMod CTRL SHIFT, F10, exec, $scriptsDir/ScreenShot.sh --in10 # screenshot (10 secs delay)
62+bind = ALT, F10, exec, $scriptsDir/ScreenShot.sh --active # screenshot (active window only)
63+
64+# screenshot with swappy (another screenshot tool)
65+bind = $mainMod SHIFT, S, exec, $scriptsDir/ScreenShot.sh --swappy #screenshot (swappy)
66+
67+# Resize windows
68+binde = $mainMod SHIFT, left, resizeactive,-50 0
69+binde = $mainMod SHIFT, right, resizeactive,50 0
70+binde = $mainMod SHIFT, up, resizeactive,0 -50
71+binde = $mainMod SHIFT, down, resizeactive,0 50
72+
73+# Move windows
74+bind = $mainMod CTRL, left, movewindow, l
75+bind = $mainMod CTRL, right, movewindow, r
76+bind = $mainMod CTRL, up, movewindow, u
77+bind = $mainMod CTRL, down, movewindow, d
78+
79+# Swap windows
80+bind = $mainMod ALT, left, swapwindow, l
81+bind = $mainMod ALT, right, swapwindow, r
82+bind = $mainMod ALT, up, swapwindow, u
83+bind = $mainMod ALT, down, swapwindow, d
84+
85+# Move focus with mainMod + arrow keys
86+bind = $mainMod, left, movefocus, l
87+bind = $mainMod, right, movefocus, r
88+bind = $mainMod, up, movefocus, u
89+bind = $mainMod, down, movefocus, d
90+
91+# Workspaces related
92+bind = $mainMod, tab, workspace, m+1
93+bind = $mainMod SHIFT, tab, workspace, m-1
94+
95+# Special workspace
96+bind = $mainMod SHIFT, U, movetoworkspace, special
97+bind = $mainMod, U, togglespecialworkspace,
98+
99+# The following mappings use the key codes to better support various keyboard layouts
100+# 1 is code:10, 2 is code 11, etc
101+# Switch workspaces with mainMod + [0-9]
102+bind = $mainMod, code:10, workspace, 1 # NOTE: code:10 = key 1
103+bind = $mainMod, code:11, workspace, 2 # NOTE: code:11 = key 2
104+bind = $mainMod, code:12, workspace, 3 # NOTE: code:12 = key 3
105+bind = $mainMod, code:13, workspace, 4 # NOTE: code:13 = key 4
106+bind = $mainMod, code:14, workspace, 5 # NOTE: code:14 = key 5
107+bind = $mainMod, code:15, workspace, 6 # NOTE: code:15 = key 6
108+bind = $mainMod, code:16, workspace, 7 # NOTE: code:16 = key 7
109+bind = $mainMod, code:17, workspace, 8 # NOTE: code:17 = key 8
110+bind = $mainMod, code:18, workspace, 9 # NOTE: code:18 = key 9
111+bind = $mainMod, code:19, workspace, 10 # NOTE: code:19 = key 0
112+
113+# Move active window and follow to workspace mainMod + SHIFT [0-9]
114+bind = $mainMod SHIFT, code:10, movetoworkspace, 1 # NOTE: code:10 = key 1
115+bind = $mainMod SHIFT, code:11, movetoworkspace, 2 # NOTE: code:11 = key 2
116+bind = $mainMod SHIFT, code:12, movetoworkspace, 3 # NOTE: code:12 = key 3
117+bind = $mainMod SHIFT, code:13, movetoworkspace, 4 # NOTE: code:13 = key 4
118+bind = $mainMod SHIFT, code:14, movetoworkspace, 5 # NOTE: code:14 = key 5
119+bind = $mainMod SHIFT, code:15, movetoworkspace, 6 # NOTE: code:15 = key 6
120+bind = $mainMod SHIFT, code:16, movetoworkspace, 7 # NOTE: code:16 = key 7
121+bind = $mainMod SHIFT, code:17, movetoworkspace, 8 # NOTE: code:17 = key 8
122+bind = $mainMod SHIFT, code:18, movetoworkspace, 9 # NOTE: code:18 = key 9
123+bind = $mainMod SHIFT, code:19, movetoworkspace, 10 # NOTE: code:19 = key 0
124+bind = $mainMod SHIFT, bracketleft, movetoworkspace, -1 # brackets [
125+bind = $mainMod SHIFT, bracketright, movetoworkspace, +1 # brackets ]
126+
127+# Move active window to a workspace silently mainMod + CTRL [0-9]
128+bind = $mainMod CTRL, code:10, movetoworkspacesilent, 1 # NOTE: code:10 = key 1
129+bind = $mainMod CTRL, code:11, movetoworkspacesilent, 2 # NOTE: code:11 = key 2
130+bind = $mainMod CTRL, code:12, movetoworkspacesilent, 3 # NOTE: code:12 = key 3
131+bind = $mainMod CTRL, code:13, movetoworkspacesilent, 4 # NOTE: code:13 = key 4
132+bind = $mainMod CTRL, code:14, movetoworkspacesilent, 5 # NOTE: code:14 = key 5
133+bind = $mainMod CTRL, code:15, movetoworkspacesilent, 6 # NOTE: code:15 = key 6
134+bind = $mainMod CTRL, code:16, movetoworkspacesilent, 7 # NOTE: code:16 = key 7
135+bind = $mainMod CTRL, code:17, movetoworkspacesilent, 8 # NOTE: code:17 = key 8
136+bind = $mainMod CTRL, code:18, movetoworkspacesilent, 9 # NOTE: code:18 = key 9
137+bind = $mainMod CTRL, code:19, movetoworkspacesilent, 10 # NOTE: code:19 = key 0
138+bind = $mainMod CTRL, bracketleft, movetoworkspacesilent, -1 # brackets [
139+bind = $mainMod CTRL, bracketright, movetoworkspacesilent, +1 # brackets ]
140+
141+# Scroll through existing workspaces with mainMod + scroll
142+bind = $mainMod, mouse_down, workspace, e+1
143+bind = $mainMod, mouse_up, workspace, e-1
144+bind = $mainMod, period, workspace, e+1
145+bind = $mainMod, comma, workspace, e-1
146+
147+# Move/resize windows with mainMod + LMB/RMB and dragging
148+bindm = $mainMod, mouse:272, movewindow # NOTE: mouse:272 = left click
149+bindm = $mainMod, mouse:273, resizewindow # NOTE: mouse:272 = right click
+50-0hypridle.conf
@@ -0,0 +1,50 @@
1+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
2+# Hypridle
3+# Original config submitted by https://github.com/SherLock707
4+
5+$iDIR="$HOME/.config/swaync/images/ja.png"
6+
7+general {
8+ lock_cmd = pidof hyprlock || hyprlock # runs hyprlock if it is not already running (this is always run when "loginctl lock-session" is called)
9+ # unlock_cmd = killall hyprlock # kills hyprlock when unlocking (this is always run when "loginctl unlock-session" is called)
10+ before_sleep_cmd = loginctl lock-session # ensures that the session is locked before going to sleep
11+ after_sleep_cmd = hyprctl dispatch dpms on # turn of screen after sleep (not strictly necessary, but just in case)
12+ ignore_dbus_inhibit = false # whether to ignore dbus-sent idle-inhibit requests (used by e.g. firefox or steam)
13+}
14+
15+# turn off screen faster if session is already locked
16+# (disabled by default)
17+# listener {
18+# timeout = 30 # 30 seconds
19+# on-timeout = pidof hyprlock && hyprctl dispatch dpms off # turns off the screen if hyprlock is active
20+# on-resume = pidof hyprlock && hyprctl dispatch dpms on # command to run when activity is detected after timeout has fired.
21+# }
22+
23+# Warn
24+listener {
25+ timeout = 540 # 9 min
26+ on-timeout = notify-send -i $iDIR " You are idle!" # command to run when timeout has passed
27+ on-resume = notify-send -i $iDIR " Oh! you're Back" " Hello !!!" # command to run when activity is detected after timeout has fired.
28+}
29+
30+# Screenlock
31+listener {
32+ timeout = 600 # 10 min
33+ on-timeout = loginctl lock-session # command to run when timeout has passed
34+ #on-resume = notify-send -i $iDIR " System Unlocked!" # command to run when activity is detected after timeout has fired.
35+}
36+
37+# Turn off screen
38+# (disabled by default)
39+# listener {
40+# timeout = 630 # 10.5 min
41+# on-timeout = hyprctl dispatch dpms off # command to run when timeout has passed
42+# on-resume = hyprctl dispatch dpms on # command to run when activity is detected after timeout has fired.
43+# }
44+
45+# Suspend # disabled by default
46+# listener {
47+ # timeout = 1200 # 20 min
48+ # on-timeout = systemctl suspend # command to run when timeout has passed
49+ # on-resume = notify-send -i $iDIR " Oh! you're back" "Hello !!!" # command to run when activity is detected after timeout has fired.
50+# }
+43-0hyprland.conf
@@ -0,0 +1,43 @@
1+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
2+# always refer to Hyprland wiki
3+# https://wiki.hyprland.org/
4+
5+# Initial boot script enable to apply initial wallpapers, theming, new settings etc.
6+# suggest not to change this or delete this including deleting referrence file in ~/.config/hypr/.initial_startup_done
7+# as long as the referrence file is present, this initial-boot.sh will not execute
8+exec-once = $HOME/.config/hypr/initial-boot.sh
9+
10+# Sourcing external config files
11+$configs = $HOME/.config/hypr/configs # Default Configs directory path
12+
13+source=$configs/Keybinds.conf # Pre-configured keybinds
14+
15+# ## This is where you want to start tinkering
16+$UserConfigs = $HOME/.config/hypr/UserConfigs # User Configs directory path
17+
18+source= $UserConfigs/Startup_Apps.conf # put your start-up packages on this file
19+
20+source= $UserConfigs/ENVariables.conf # Environment variables to load
21+
22+#source= $UserConfigs/Monitors.conf # Its all about your monitor config (old dots) will remove on push to main
23+#source= $UserConfigs/WorkspaceRules.conf # Hyprland workspaces (old dots) will remove on push to main
24+
25+source= $UserConfigs/Laptops.conf # For laptop related
26+
27+source= $UserConfigs/LaptopDisplay.conf # Laptop display related. You need to read the comment on this file
28+
29+source= $UserConfigs/WindowRules.conf # all about Hyprland Window Rules and Layer Rules
30+
31+source= $UserConfigs/UserDecorations.conf # Decorations config file
32+
33+source= $UserConfigs/UserAnimations.conf # Animation config file
34+
35+source= $UserConfigs/UserKeybinds.conf # Put your own keybinds here
36+
37+source= $UserConfigs/UserSettings.conf # Main Hyprland Settings.
38+
39+source= $UserConfigs/01-UserDefaults.conf # settings for User defaults apps
40+
41+# nwg-displays
42+source= $HOME/.config/hypr/monitors.conf
43+source= $HOME/.config/hypr/workspaces.conf
+160-0hyprlock-1080p.conf
@@ -0,0 +1,160 @@
1+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
2+# Hyprlock config for < 1080p monitor resolutions
3+# Original config submitted by https://github.com/SherLock707
4+
5+# Sourcing colors generated by wallust
6+source = $HOME/.config/hypr/wallust/wallust-hyprland.conf
7+$Scripts = $HOME/.config/hypr/scripts
8+
9+general {
10+ grace = 1
11+ fractional_scaling = 2
12+ immediate_render = true
13+}
14+
15+background {
16+ monitor =
17+ # NOTE: use only 1 path
18+ #path = screenshot # screenshot of your desktop
19+ #path = $HOME/.config/hypr/wallpaper_effects/.wallpaper_modified # by wallpaper effects
20+ path = $HOME/.config/hypr/wallpaper_effects/.wallpaper_current # current wallpaper
21+
22+ color = rgb(0,0,0) # color will be rendered initially until path is available
23+
24+ # all these options are taken from hyprland, see https://wiki.hyprland.org/Configuring/Variables/#blur for explanations
25+ blur_size = 3
26+ blur_passes = 2 # 0 disables blurring
27+ noise = 0.0117
28+ contrast = 1.3000 # Vibrant!!!
29+ brightness = 0.8000
30+ vibrancy = 0.2100
31+ vibrancy_darkness = 0.0
32+}
33+
34+
35+# Date
36+# label {
37+# monitor =
38+# text = cmd[update:18000000] echo "<b> "$(date +'%A, %-d %B')" </b>"
39+# color = $color13
40+# font_size = 16
41+# font_family = Victor Mono Bold Italic
42+# position = 0, -20
43+# halign = center
44+# valign = center
45+# }
46+
47+# Hour-Time
48+label {
49+ monitor =
50+ text = cmd[update:1000] echo "$(date +"%H")"
51+# text = cmd[update:1000] echo "$(date +"%I")" #AM/PM
52+ #color = rgba(255, 185, 0, .8)
53+ color = $color13
54+ font_size = 200
55+ font_family = JetBrainsMono Nerd Font ExtraBold
56+ position = 0, -60
57+ halign = center
58+ valign = top
59+}
60+
61+# Minute-Time
62+label {
63+ monitor =
64+ text = cmd[update:1000] echo "$(date +"%M")"
65+ #color = rgba(15, 10, 222, .8)
66+ color = $color12
67+ font_size = 200
68+ font_family = JetBrainsMono Nerd Font ExtraBold
69+ position = 0, -320
70+ halign = center
71+ valign = top
72+}
73+
74+# Seconds-Time
75+label {
76+ monitor =
77+ text = cmd[update:1000] echo "$(date +"%S")"
78+# text = cmd[update:1000] echo "$(date +"%S %p")" #AM/PM
79+ color = $color11
80+ font_size = 35
81+ font_family = JetBrainsMono Nerd Font ExtraBold
82+ position = 0, -350
83+ halign = center
84+ valign = top
85+}
86+
87+# Put a picture of choice here. Default is the current wallpaper
88+#image {
89+# monitor =
90+# path = $HOME/.config/hypr/wallpaper_effects/.wallpaper_current
91+# size = 160
92+# rounding = -1
93+# border_size = 0
94+# border_color = $color11
95+# rotate = 0
96+# reload_time = -1
97+# position = 0, 280
98+# halign = center
99+# valign = bottom
100+}
101+
102+# USER
103+label {
104+ monitor =
105+ text =  $USER
106+ color = $color13
107+ font_size = 24
108+ font_family = Victor Mono Bold Oblique
109+ position = 0, 150
110+ halign = center
111+ valign = bottom
112+}
113+
114+
115+# INPUT FIELD
116+input-field {
117+ monitor =
118+ size = 300, 60
119+ outline_thickness = 2
120+ dots_size = 0.2 # Scale of input-field height, 0.2 - 0.8
121+ dots_spacing = 0.2 # Scale of dots' absolute size, 0.0 - 1.0
122+ dots_center = true
123+ outer_color = $color11
124+ inner_color = rgba(255, 255, 255, 0.1)
125+ capslock_color = rgb(255,255,255)
126+ font_color = $color13
127+ fade_on_empty = false
128+ font_family = Victor Mono Bold Oblique
129+ placeholder_text = <i><span foreground="##ffffff99">🔒 Type Password</span></i>
130+ hide_input = false
131+ position = 0, 50
132+ halign = center
133+ valign = bottom
134+}
135+
136+# uptime
137+label {
138+ monitor =
139+ text = cmd[update:60000] echo "<b> "$(uptime -p || $Scripts/UptimeNixOS.sh)" </b>"
140+ color = $color13
141+ font_size = 16
142+ font_family = Victor Mono Bold Oblique
143+ position = 0, 0
144+ halign = right
145+ valign = bottom
146+}
147+
148+# weather edit the scripts for locations
149+# weather scripts are located in ~/.config/hypr/UserScripts Weather.sh and/or Weather.py
150+# see https://github.com/JaKooLit/Hyprland-Dots/wiki/TIPS#%EF%B8%8F-weather-app-related-for-waybar-and-hyprlock
151+label {
152+ monitor =
153+ text = cmd[update:3600000] [ -f "$HOME/.cache/.weather_cache" ] && cat "$HOME/.cache/.weather_cache"
154+ color = $color13
155+ font_size = 16
156+ font_family = Victor Mono Bold Oblique
157+ position = 50, 0
158+ halign = left
159+ valign = bottom
160+}
+157-0hyprlock.conf
@@ -0,0 +1,157 @@
1+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
2+# Hyprlock config for => 2k monitor resolutions
3+# Original config submitted by https://github.com/SherLock707
4+
5+# Sourcing colors generated by wallust
6+source = $HOME/.config/hypr/wallust/wallust-hyprland.conf
7+$Scripts = $HOME/.config/hypr/scripts
8+
9+general {
10+ grace = 1
11+ fractional_scaling = 2
12+ immediate_render = true
13+}
14+
15+background {
16+ monitor =
17+ # NOTE: use only 1 path
18+ path = screenshot # screenshot of your desktop
19+ # path = $HOME/.config/hypr/wallpaper_effects/.wallpaper_modified # by wallpaper effects
20+ # path = $HOME/.config/hypr/wallpaper_effects/.wallpaper_current # current wallpaper
21+
22+ color = rgb(0,0,0) # color will be rendered initially until path is available
23+
24+ # all these options are taken from hyprland, see https://wiki.hyprland.org/Configuring/Variables/#blur for explanations
25+ blur_size = 3
26+ blur_passes = 3 # 0 disables blurring
27+ noise = 0.0117
28+ contrast = 1.3000 # Vibrant!!!
29+ brightness = 0.8000
30+ vibrancy = 0.2100
31+ vibrancy_darkness = 0.0
32+}
33+
34+
35+# Date
36+label {
37+ monitor =
38+ text = cmd[update:18000000] echo "<b> "$(date +'%A, %-d %B')" </b>"
39+ color = $color13
40+ font_size = 42
41+ font_family = Victor Mono Bold
42+ position = 0, 400
43+ halign = center
44+ valign = center
45+}
46+
47+# Hour-Time
48+label {
49+ monitor =
50+ text = cmd[update:1000] echo "$(date +"%I")" #AM/PM
51+ color = $color13
52+ font_size = 240
53+ font_family = JetBrainsMono Nerd Font ExtraBold
54+ position = 0, -100
55+ halign = center
56+ valign = top
57+}
58+
59+# Minute-Time
60+label {
61+ monitor =
62+ text = cmd[update:1000] echo "$(date +"%M")"
63+ color = $color13
64+ font_size = 240
65+ font_family = JetBrainsMono Nerd Font ExtraBold
66+ position = 0, -450
67+ halign = center
68+ valign = top
69+}
70+
71+# Seconds-Time
72+label {
73+ monitor =
74+# text = cmd[update:1000] echo "$(date +"%S")"
75+ text = cmd[update:1000] echo "$(date +"%S %p")" #AM/PM
76+ color = $color11
77+ font_size = 50
78+ font_family = JetBrainsMono Nerd Font ExtraBold
79+ position = 0, -450
80+ halign = center
81+ valign = top
82+}
83+
84+# Put a picture of choice here. Default is the current wallpaper
85+#image {
86+# monitor =
87+# #path = $HOME/.config/hypr/wallpaper_effects/.wallpaper_current
88+# size = 160
89+# rounding = -1
90+# border_size = 0
91+# border_color = $color11
92+# rotate = 0
93+# reload_time = -1
94+# position = 0, 400
95+# halign = center
96+# valign = bottom
97+#}
98+
99+# USER
100+label {
101+ monitor =
102+ text =  $USER
103+ color = $color13
104+ font_size = 24
105+ font_family = Victor Mono Bold Oblique
106+ position = 0, 200
107+ halign = center
108+ valign = bottom
109+}
110+
111+
112+# INPUT FIELD
113+input-field {
114+ monitor =
115+ size = 300, 60
116+ outline_thickness = 2
117+ dots_size = 0.2 # Scale of input-field height, 0.2 - 0.8
118+ dots_spacing = 0.2 # Scale of dots' absolute size, 0.0 - 1.0
119+ dots_center = true
120+ outer_color = $color11
121+ inner_color = rgba(255, 255, 255, 0.1)
122+ font_color = $color13
123+ capslock_color = rgb(255,255,255)
124+ fade_on_empty = false
125+ font_family = Victor Mono Bold Oblique
126+ placeholder_text = <i><span foreground="##ffffff99">🔒 Type Password</span></i>
127+ hide_input = false
128+ position = 0, 100
129+ halign = center
130+ valign = bottom
131+}
132+
133+# uptime
134+label {
135+ monitor =
136+ text = cmd[update:60000] echo "<b> "$(uptime -p || $Scripts/UptimeNixOS.sh)" </b>"
137+ color = $color13
138+ font_size = 18
139+ font_family = Victor Mono Bold Oblique
140+ position = 0, 15
141+ halign = right
142+ valign = bottom
143+}
144+
145+# weather edit the scripts for locations
146+# weather scripts are located in ~/.config/hypr/UserScripts Weather.sh and/or Weather.py
147+# see https://github.com/JaKooLit/Hyprland-Dots/wiki/TIPS#%EF%B8%8F-weather-app-related-for-waybar-and-hyprlock
148+label {
149+ monitor =
150+ text = cmd[update:3600000] [ -f "$HOME/.cache/.weather_cache" ] && cat "$HOME/.cache/.weather_cache"
151+ color = $color13
152+ font_size = 18
153+ font_family = Victor Mono Bold Oblique
154+ position = 10, 15
155+ halign = left
156+ valign = bottom
157+}
+66-0initial-boot.sh
@@ -0,0 +1,66 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
3+# A bash script designed to run only once dotfiles installed
4+
5+# THIS SCRIPT CAN BE DELETED ONCE SUCCESSFULLY BOOTED!! And also, edit ~/.config/hypr/configs/Settings.conf
6+# NOT necessary to do since this script is only designed to run only once as long as the marker exists
7+# marker file is located at ~/.config/hypr/.initial_startup_done
8+# However, I do highly suggest not to touch it since again, as long as the marker exist, script wont run
9+
10+# Variables
11+scriptsDir=$HOME/.config/hypr/scripts
12+wallpaper=$HOME/.config/hypr/wallpaper_effects/.wallpaper_current
13+waybar_style="$HOME/.config/waybar/style/[Extra] Modern-Combined - Transparent.css"
14+kvantum_theme="catppuccin-mocha-blue"
15+color_scheme="prefer-dark"
16+gtk_theme="Flat-Remix-GTK-Blue-Dark"
17+icon_theme="Flat-Remix-Blue-Dark"
18+cursor_theme="Bibata-Modern-Ice"
19+
20+swww="swww img"
21+effect="--transition-bezier .43,1.19,1,.4 --transition-fps 30 --transition-type grow --transition-pos 0.925,0.977 --transition-duration 2"
22+
23+# Check if a marker file exists.
24+if [ ! -f "$HOME/.config/hypr/.initial_startup_done" ]; then
25+ sleep 1
26+ # Initialize wallust and wallpaper
27+ if [ -f "$wallpaper" ]; then
28+ wallust run -s $wallpaper > /dev/null
29+ swww query || swww-daemon && $swww $wallpaper $effect
30+ "$scriptsDir/WallustSwww.sh" > /dev/null 2>&1 &
31+ fi
32+
33+ # initiate GTK dark mode and apply icon and cursor theme
34+ gsettings set org.gnome.desktop.interface color-scheme $color_scheme > /dev/null 2>&1 &
35+ gsettings set org.gnome.desktop.interface gtk-theme $gtk_theme > /dev/null 2>&1 &
36+ gsettings set org.gnome.desktop.interface icon-theme $icon_theme > /dev/null 2>&1 &
37+ gsettings set org.gnome.desktop.interface cursor-theme $cursor_theme > /dev/null 2>&1 &
38+ gsettings set org.gnome.desktop.interface cursor-size 24 > /dev/null 2>&1 &
39+
40+ # NIXOS initiate GTK dark mode and apply icon and cursor theme
41+ if [ -n "$(grep -i nixos < /etc/os-release)" ]; then
42+ gsettings set org.gnome.desktop.interface color-scheme "'$color_scheme'" > /dev/null 2>&1 &
43+ dconf write /org/gnome/desktop/interface/gtk-theme "'$gtk_theme'" > /dev/null 2>&1 &
44+ dconf write /org/gnome/desktop/interface/icon-theme "'$icon_theme'" > /dev/null 2>&1 &
45+ dconf write /org/gnome/desktop/interface/cursor-theme "'$cursor_theme'" > /dev/null 2>&1 &
46+ dconf write /org/gnome/desktop/interface/cursor-size "24" > /dev/null 2>&1 &
47+ fi
48+
49+ # initiate kvantum theme
50+ kvantummanager --set "$kvantum_theme" > /dev/null 2>&1 &
51+
52+ # initiate the kb_layout (for some reason) waybar cant launch it
53+ "$scriptsDir/SwitchKeyboardLayout.sh" > /dev/null 2>&1 &
54+
55+ # waybar style
56+ #if [ -L "$HOME/.config/waybar/config" ]; then
57+ ## ln -sf "$waybar_style" "$HOME/.config/waybar/style.css"
58+ # "$scriptsDir/Refresh.sh" > /dev/null 2>&1 &
59+ #fi
60+
61+
62+ # Create a marker file to indicate that the script has been executed.
63+ touch "$HOME/.config/hypr/.initial_startup_done"
64+
65+ exit
66+fi
+16-0scripts/AirplaneMode.sh
@@ -0,0 +1,16 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
3+# Airplane Mode. Turning on or off all wifi using rfkill.
4+
5+notif="$HOME/.config/swaync/images/ja.png"
6+
7+# Check if any wireless device is blocked
8+wifi_blocked=$(rfkill list wifi | grep -o "Soft blocked: yes")
9+
10+if [ -n "$wifi_blocked" ]; then
11+ rfkill unblock wifi
12+ notify-send -u low -i "$notif" " Airplane" " mode: OFF"
13+else
14+ rfkill block wifi
15+ notify-send -u low -i "$notif" " Airplane" " mode: ON"
16+fi
+31-0scripts/Animations.sh
@@ -0,0 +1,31 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
3+# For applying Animations from different users
4+
5+# Check if rofi is already running
6+if pidof rofi > /dev/null; then
7+ pkill rofi
8+fi
9+
10+# Variables
11+iDIR="$HOME/.config/swaync/images"
12+SCRIPTSDIR="$HOME/.config/hypr/scripts"
13+animations_dir="$HOME/.config/hypr/animations"
14+UserConfigs="$HOME/.config/hypr/UserConfigs"
15+rofi_theme="$HOME/.config/rofi/config-Animations.rasi"
16+msg='❗NOTE:❗ This will copy animations into UserAnimations.conf'
17+# list of animation files, sorted alphabetically with numbers first
18+animations_list=$(find -L "$animations_dir" -maxdepth 1 -type f | sed 's/.*\///' | sed 's/\.conf$//' | sort -V)
19+
20+# Rofi Menu
21+chosen_file=$(echo "$animations_list" | rofi -i -dmenu -config $rofi_theme -mesg "$msg")
22+
23+# Check if a file was selected
24+if [[ -n "$chosen_file" ]]; then
25+ full_path="$animations_dir/$chosen_file.conf"
26+ cp "$full_path" "$UserConfigs/UserAnimations.conf"
27+ notify-send -u low -i "$iDIR/ja.png" "$chosen_file" "Hyprland Animation Loaded"
28+fi
29+
30+sleep 1
31+"$SCRIPTSDIR/RefreshNoWaybar.sh"
+74-0scripts/Brightness.sh
@@ -0,0 +1,74 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
3+# Script for Monitor backlights (if supported) using brightnessctl
4+
5+iDIR="$HOME/.config/swaync/icons"
6+notification_timeout=1000
7+step=10 # INCREASE/DECREASE BY THIS VALUE
8+
9+# Get brightness
10+get_backlight() {
11+ brightnessctl -m | cut -d, -f4 | sed 's/%//'
12+}
13+
14+# Get icons
15+get_icon() {
16+ current=$(get_backlight)
17+ if [ "$current" -le "20" ]; then
18+ icon="$iDIR/brightness-20.png"
19+ elif [ "$current" -le "40" ]; then
20+ icon="$iDIR/brightness-40.png"
21+ elif [ "$current" -le "60" ]; then
22+ icon="$iDIR/brightness-60.png"
23+ elif [ "$current" -le "80" ]; then
24+ icon="$iDIR/brightness-80.png"
25+ else
26+ icon="$iDIR/brightness-100.png"
27+ fi
28+}
29+
30+# Notify
31+notify_user() {
32+ notify-send -e -h string:x-canonical-private-synchronous:brightness_notif -h int:value:$current -u low -i $icon "Screen" "Brightness:$current%"
33+}
34+
35+# Change brightness
36+change_backlight() {
37+ local current_brightness
38+ current_brightness=$(get_backlight)
39+
40+ # Calculate new brightness
41+ if [[ "$1" == "+${step}%" ]]; then
42+ new_brightness=$((current_brightness + step))
43+ elif [[ "$1" == "${step}%-" ]]; then
44+ new_brightness=$((current_brightness - step))
45+ fi
46+
47+ # Ensure new brightness is within valid range
48+ if (( new_brightness < 5 )); then
49+ new_brightness=5
50+ elif (( new_brightness > 100 )); then
51+ new_brightness=100
52+ fi
53+
54+ brightnessctl set "${new_brightness}%"
55+ get_icon
56+ current=$new_brightness
57+ notify_user
58+}
59+
60+# Execute accordingly
61+case "$1" in
62+ "--get")
63+ get_backlight
64+ ;;
65+ "--inc")
66+ change_backlight "+${step}%"
67+ ;;
68+ "--dec")
69+ change_backlight "${step}%-"
70+ ;;
71+ *)
72+ get_backlight
73+ ;;
74+esac
+51-0scripts/BrightnessKbd.sh
@@ -0,0 +1,51 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
3+# Script for keyboard backlights (if supported) using brightnessctl
4+
5+iDIR="$HOME/.config/swaync/icons"
6+
7+# Get keyboard brightness
8+get_kbd_backlight() {
9+ echo $(brightnessctl -d '*::kbd_backlight' -m | cut -d, -f4)
10+}
11+
12+# Get icons
13+get_icon() {
14+ current=$(get_kbd_backlight | sed 's/%//')
15+ if [ "$current" -le "20" ]; then
16+ icon="$iDIR/brightness-20.png"
17+ elif [ "$current" -le "40" ]; then
18+ icon="$iDIR/brightness-40.png"
19+ elif [ "$current" -le "60" ]; then
20+ icon="$iDIR/brightness-60.png"
21+ elif [ "$current" -le "80" ]; then
22+ icon="$iDIR/brightness-80.png"
23+ else
24+ icon="$iDIR/brightness-100.png"
25+ fi
26+}
27+# Notify
28+notify_user() {
29+ notify-send -e -h string:x-canonical-private-synchronous:brightness_notif -h int:value:$current -u low -i "$icon" "Keyboard" "Brightness:$current%"
30+}
31+
32+# Change brightness
33+change_kbd_backlight() {
34+ brightnessctl -d *::kbd_backlight set "$1" && get_icon && notify_user
35+}
36+
37+# Execute accordingly
38+case "$1" in
39+ "--get")
40+ get_kbd_backlight
41+ ;;
42+ "--inc")
43+ change_kbd_backlight "+30%"
44+ ;;
45+ "--dec")
46+ change_kbd_backlight "30%-"
47+ ;;
48+ *)
49+ get_kbd_backlight
50+ ;;
51+esac
+17-0scripts/ChangeBlur.sh
@@ -0,0 +1,17 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
3+# Script for changing blurs on the fly
4+
5+notif="$HOME/.config/swaync/images"
6+
7+STATE=$(hyprctl -j getoption decoration:blur:passes | jq ".int")
8+
9+if [ "${STATE}" == "2" ]; then
10+ hyprctl keyword decoration:blur:size 2
11+ hyprctl keyword decoration:blur:passes 1
12+ notify-send -e -u low -i "$notif/note.png" " Less Blur"
13+else
14+ hyprctl keyword decoration:blur:size 5
15+ hyprctl keyword decoration:blur:passes 2
16+ notify-send -e -u low -i "$notif/ja.png" " Normal Blur"
17+fi
+30-0scripts/ChangeLayout.sh
@@ -0,0 +1,30 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
3+# for changing Hyprland Layouts (Master or Dwindle) on the fly
4+
5+notif="$HOME/.config/swaync/images/ja.png"
6+
7+LAYOUT=$(hyprctl -j getoption general:layout | jq '.str' | sed 's/"//g')
8+
9+case $LAYOUT in
10+"master")
11+ hyprctl keyword general:layout dwindle
12+ hyprctl keyword unbind SUPER,J
13+ hyprctl keyword unbind SUPER,K
14+ hyprctl keyword bind SUPER,J,cyclenext
15+ hyprctl keyword bind SUPER,K,cyclenext,prev
16+ hyprctl keyword bind SUPER,O,togglesplit
17+ notify-send -e -u low -i "$notif" " Dwindle Layout"
18+ ;;
19+"dwindle")
20+ hyprctl keyword general:layout master
21+ hyprctl keyword unbind SUPER,J
22+ hyprctl keyword unbind SUPER,K
23+ hyprctl keyword unbind SUPER,O
24+ hyprctl keyword bind SUPER,J,layoutmsg,cyclenext
25+ hyprctl keyword bind SUPER,K,layoutmsg,cycleprev
26+ notify-send -e -u low -i "$notif" " Master Layout"
27+ ;;
28+*) ;;
29+
30+esac
+49-0scripts/ClipManager.sh
@@ -0,0 +1,49 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
3+# Clipboard Manager. This script uses cliphist, rofi, and wl-copy.
4+
5+# Variables
6+rofi_theme="$HOME/.config/rofi/config-clipboard.rasi"
7+msg='👀 **note** CTRL DEL = cliphist del (entry) or ALT DEL - cliphist wipe (all)'
8+# Actions:
9+# CTRL Del to delete an entry
10+# ALT Del to wipe clipboard contents
11+
12+# Check if rofi is already running
13+if pidof rofi > /dev/null; then
14+ pkill rofi
15+fi
16+
17+while true; do
18+ result=$(
19+ rofi -i -dmenu \
20+ -kb-custom-1 "Control-Delete" \
21+ -kb-custom-2 "Alt-Delete" \
22+ -config $rofi_theme < <(cliphist list) \
23+ -mesg "$msg"
24+ )
25+
26+ case "$?" in
27+ 1)
28+ exit
29+ ;;
30+ 0)
31+ case "$result" in
32+ "")
33+ continue
34+ ;;
35+ *)
36+ cliphist decode <<<"$result" | wl-copy
37+ exit
38+ ;;
39+ esac
40+ ;;
41+ 10)
42+ cliphist delete <<<"$result"
43+ ;;
44+ 11)
45+ cliphist wipe
46+ ;;
47+ esac
48+done
49+
+254-0scripts/DarkLight.sh
@@ -0,0 +1,254 @@
1+#!/bin/bash
2+## /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
3+# For Dark and Light switching
4+# Note: Scripts are looking for keywords Light or Dark except for wallpapers as the are in a separate directories
5+
6+# Paths
7+wallpaper_base_path="$HOME/Pictures/wallpapers/Dynamic-Wallpapers"
8+dark_wallpapers="$wallpaper_base_path/Dark"
9+light_wallpapers="$wallpaper_base_path/Light"
10+hypr_config_path="$HOME/.config/hypr"
11+swaync_style="$HOME/.config/swaync/style.css"
12+ags_style="$HOME/.config/ags/user/style.css"
13+SCRIPTSDIR="$HOME/.config/hypr/scripts"
14+notif="$HOME/.config/swaync/images/bell.png"
15+wallust_rofi="$HOME/.config/wallust/templates/colors-rofi.rasi"
16+
17+kitty_conf="$HOME/.config/kitty/kitty.conf"
18+
19+wallust_config="$HOME/.config/wallust/wallust.toml"
20+pallete_dark="dark16"
21+pallete_light="light16"
22+
23+# intial kill process
24+for pid in waybar rofi swaync ags swaybg; do
25+ killall -SIGUSR1 "$pid"
26+done
27+
28+
29+# Initialize swww if needed
30+swww query || swww-daemon --format xrgb
31+
32+# Set swww options
33+swww="swww img"
34+effect="--transition-bezier .43,1.19,1,.4 --transition-fps 60 --transition-type grow --transition-pos 0.925,0.977 --transition-duration 2"
35+
36+# Determine current theme mode
37+if [ "$(cat $HOME/.cache/.theme_mode)" = "Light" ]; then
38+ next_mode="Dark"
39+ # Logic for Dark mode
40+ wallpaper_path="$dark_wallpapers"
41+else
42+ next_mode="Light"
43+ # Logic for Light mode
44+ wallpaper_path="$light_wallpapers"
45+fi
46+
47+# Function to update theme mode for the next cycle
48+update_theme_mode() {
49+ echo "$next_mode" > "$HOME/.cache/.theme_mode"
50+}
51+
52+# Function to notify user
53+notify_user() {
54+ notify-send -u low -i "$notif" " Switching to" " $1 mode"
55+}
56+
57+# Use sed to replace the palette setting in the wallust config file
58+if [ "$next_mode" = "Dark" ]; then
59+ sed -i 's/^palette = .*/palette = "'"$pallete_dark"'"/' "$wallust_config"
60+else
61+ sed -i 's/^palette = .*/palette = "'"$pallete_light"'"/' "$wallust_config"
62+fi
63+
64+# Function to set Waybar style
65+set_waybar_style() {
66+ theme="$1"
67+ waybar_styles="$HOME/.config/waybar/style"
68+ waybar_style_link="$HOME/.config/waybar/style.css"
69+ style_prefix="\\[${theme}\\].*\\.css$"
70+
71+ style_file=$(find -L "$waybar_styles" -maxdepth 1 -type f -regex ".*$style_prefix" | shuf -n 1)
72+
73+ if [ -n "$style_file" ]; then
74+ ln -sf "$style_file" "$waybar_style_link"
75+ else
76+ echo "Style file not found for $theme theme."
77+ fi
78+}
79+
80+# Call the function after determining the mode
81+set_waybar_style "$next_mode"
82+notify_user "$next_mode"
83+
84+
85+# swaync color change
86+if [ "$next_mode" = "Dark" ]; then
87+ sed -i '/@define-color noti-bg/s/rgba([0-9]*,\s*[0-9]*,\s*[0-9]*,\s*[0-9.]*);/rgba(0, 0, 0, 0.8);/' "${swaync_style}"
88+ #sed -i '/@define-color noti-bg-alt/s/#.*;/#111111;/' "${swaync_style}"
89+else
90+ sed -i '/@define-color noti-bg/s/rgba([0-9]*,\s*[0-9]*,\s*[0-9]*,\s*[0-9.]*);/rgba(255, 255, 255, 0.9);/' "${swaync_style}"
91+ #sed -i '/@define-color noti-bg-alt/s/#.*;/#F0F0F0;/' "${swaync_style}"
92+fi
93+
94+# ags color change
95+if command -v ags >/dev/null 2>&1; then
96+ if [ "$next_mode" = "Dark" ]; then
97+ sed -i '/@define-color noti-bg/s/rgba([0-9]*,\s*[0-9]*,\s*[0-9]*,\s*[0-9.]*);/rgba(0, 0, 0, 0.4);/' "${ags_style}"
98+ sed -i '/@define-color text-color/s/rgba([0-9]*,\s*[0-9]*,\s*[0-9]*,\s*[0-9.]*);/rgba(255, 255, 255, 0.7);/' "${ags_style}"
99+ sed -i '/@define-color noti-bg-alt/s/#.*;/#111111;/' "${ags_style}"
100+ else
101+ sed -i '/@define-color noti-bg/s/rgba([0-9]*,\s*[0-9]*,\s*[0-9]*,\s*[0-9.]*);/rgba(255, 255, 255, 0.4);/' "${ags_style}"
102+ sed -i '/@define-color text-color/s/rgba([0-9]*,\s*[0-9]*,\s*[0-9]*,\s*[0-9.]*);/rgba(0, 0, 0, 0.7);/' "${ags_style}"
103+ sed -i '/@define-color noti-bg-alt/s/#.*;/#F0F0F0;/' "${ags_style}"
104+ fi
105+fi
106+
107+# kitty background color change
108+if [ "$next_mode" = "Dark" ]; then
109+ sed -i '/^foreground /s/^foreground .*/foreground #dddddd/' "${kitty_conf}"
110+ sed -i '/^background /s/^background .*/background #000000/' "${kitty_conf}"
111+ sed -i '/^cursor /s/^cursor .*/cursor #dddddd/' "${kitty_conf}"
112+else
113+ sed -i '/^foreground /s/^foreground .*/foreground #000000/' "${kitty_conf}"
114+ sed -i '/^background /s/^background .*/background #dddddd/' "${kitty_conf}"
115+ sed -i '/^cursor /s/^cursor .*/cursor #000000/' "${kitty_conf}"
116+fi
117+
118+for pid_kitty in $(pidof kitty); do
119+ kill -SIGUSR1 "$pid_kitty"
120+done
121+
122+# Set Dynamic Wallpaper for Dark or Light Mode
123+if [ "$next_mode" = "Dark" ]; then
124+ next_wallpaper="$(find -L "${dark_wallpapers}" -type f \( -iname "*.jpg" -o -iname "*.png" \) -print0 | shuf -n1 -z | xargs -0)"
125+else
126+ next_wallpaper="$(find -L "${light_wallpapers}" -type f \( -iname "*.jpg" -o -iname "*.png" \) -print0 | shuf -n1 -z | xargs -0)"
127+fi
128+
129+# Update wallpaper using swww command
130+$swww "${next_wallpaper}" $effect
131+
132+
133+# Set Kvantum Manager theme & QT5/QT6 settings
134+if [ "$next_mode" = "Dark" ]; then
135+ kvantum_theme="catppuccin-mocha-blue"
136+ #qt5ct_color_scheme="$HOME/.config/qt5ct/colors/Catppuccin-Mocha.conf"
137+ #qt6ct_color_scheme="$HOME/.config/qt6ct/colors/Catppuccin-Mocha.conf"
138+else
139+ kvantum_theme="catppuccin-latte-blue"
140+ #qt5ct_color_scheme="$HOME/.config/qt5ct/colors/Catppuccin-Latte.conf"
141+ #qt6ct_color_scheme="$HOME/.config/qt6ct/colors/Catppuccin-Latte.conf"
142+fi
143+
144+sed -i "s|^color_scheme_path=.*$|color_scheme_path=$qt5ct_color_scheme|" "$HOME/.config/qt5ct/qt5ct.conf"
145+sed -i "s|^color_scheme_path=.*$|color_scheme_path=$qt6ct_color_scheme|" "$HOME/.config/qt6ct/qt6ct.conf"
146+kvantummanager --set "$kvantum_theme"
147+
148+
149+# set the rofi color for background
150+if [ "$next_mode" = "Dark" ]; then
151+ sed -i '/^background:/s/.*/background: rgba(0,0,0,0.7);/' $wallust_rofi
152+else
153+ sed -i '/^background:/s/.*/background: rgba(255,255,255,0.9);/' $wallust_rofi
154+fi
155+
156+
157+# GTK themes and icons switching
158+set_custom_gtk_theme() {
159+ mode=$1
160+ gtk_themes_directory="$HOME/.themes"
161+ icon_directory="$HOME/.icons"
162+ color_setting="org.gnome.desktop.interface color-scheme"
163+ theme_setting="org.gnome.desktop.interface gtk-theme"
164+ icon_setting="org.gnome.desktop.interface icon-theme"
165+
166+ if [ "$mode" == "Light" ]; then
167+ search_keywords="*Light*"
168+ gsettings set $color_setting 'prefer-light'
169+ elif [ "$mode" == "Dark" ]; then
170+ search_keywords="*Dark*"
171+ gsettings set $color_setting 'prefer-dark'
172+ else
173+ echo "Invalid mode provided."
174+ return 1
175+ fi
176+
177+ themes=()
178+ icons=()
179+
180+ while IFS= read -r -d '' theme_search; do
181+ themes+=("$(basename "$theme_search")")
182+ done < <(find "$gtk_themes_directory" -maxdepth 1 -type d -iname "$search_keywords" -print0)
183+
184+ while IFS= read -r -d '' icon_search; do
185+ icons+=("$(basename "$icon_search")")
186+ done < <(find "$icon_directory" -maxdepth 1 -type d -iname "$search_keywords" -print0)
187+
188+ if [ ${#themes[@]} -gt 0 ]; then
189+ if [ "$mode" == "Dark" ]; then
190+ selected_theme=${themes[RANDOM % ${#themes[@]}]}
191+ else
192+ selected_theme=${themes[$RANDOM % ${#themes[@]}]}
193+ fi
194+ echo "Selected GTK theme for $mode mode: $selected_theme"
195+ gsettings set $theme_setting "$selected_theme"
196+
197+ # Flatpak GTK apps (themes)
198+ if command -v flatpak &> /dev/null; then
199+ flatpak --user override --filesystem=$HOME/.themes
200+ sleep 0.5
201+ flatpak --user override --env=GTK_THEME="$selected_theme"
202+ fi
203+ else
204+ echo "No $mode GTK theme found"
205+ fi
206+
207+ if [ ${#icons[@]} -gt 0 ]; then
208+ if [ "$mode" == "Dark" ]; then
209+ selected_icon=${icons[RANDOM % ${#icons[@]}]}
210+ else
211+ selected_icon=${icons[$RANDOM % ${#icons[@]}]}
212+ fi
213+ echo "Selected icon theme for $mode mode: $selected_icon"
214+ gsettings set $icon_setting "$selected_icon"
215+
216+ ## QT5ct icon_theme
217+ sed -i "s|^icon_theme=.*$|icon_theme=$selected_icon|" "$HOME/.config/qt5ct/qt5ct.conf"
218+ sed -i "s|^icon_theme=.*$|icon_theme=$selected_icon|" "$HOME/.config/qt6ct/qt6ct.conf"
219+
220+ # Flatpak GTK apps (icons)
221+ if command -v flatpak &> /dev/null; then
222+ flatpak --user override --filesystem=$HOME/.icons
223+ sleep 0.5
224+ flatpak --user override --env=ICON_THEME="$selected_icon"
225+ fi
226+ else
227+ echo "No $mode icon theme found"
228+ fi
229+}
230+
231+# Call the function to set GTK theme and icon theme based on mode
232+set_custom_gtk_theme "$next_mode"
233+
234+# Update theme mode for the next cycle
235+update_theme_mode
236+
237+
238+${SCRIPTSDIR}/WallustSwww.sh &&
239+
240+sleep 2
241+# kill process
242+for pid1 in waybar rofi swaync ags swaybg; do
243+ killall "$pid1"
244+done
245+
246+sleep 1
247+${SCRIPTSDIR}/Refresh.sh
248+
249+sleep 0.5
250+# Display notifications for theme and icon changes
251+notify-send -u low -i "$notif" " Themes switched to:" " $next_mode Mode"
252+
253+exit 0
254+
+40-0scripts/Distro_update.sh
@@ -0,0 +1,40 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
3+# Simple bash script to check and will try to update your system
4+
5+# Local Paths
6+iDIR="$HOME/.config/swaync/images"
7+
8+# Check for required tools (kitty)
9+if ! command -v kitty &> /dev/null; then
10+ notify-send -i "$iDIR/error.png" "Need Kitty:" "Kitty terminal not found. Please install Kitty terminal."
11+ exit 1
12+fi
13+
14+# Detect distribution and update accordingly
15+if command -v paru &> /dev/null || command -v yay &> /dev/null; then
16+ # Arch-based
17+ if command -v paru &> /dev/null; then
18+ kitty -T update paru -Syu
19+ notify-send -i "$iDIR/ja.png" -u low 'Arch-based system' 'has been updated.'
20+ else
21+ kitty -T update yay -Syu
22+ notify-send -i "$iDIR/ja.png" -u low 'Arch-based system' 'has been updated.'
23+ fi
24+elif command -v dnf &> /dev/null; then
25+ # Fedora-based
26+ kitty -T update sudo dnf update --refresh -y
27+ notify-send -i "$iDIR/ja.png" -u low 'Fedora system' 'has been updated.'
28+elif command -v apt &> /dev/null; then
29+ # Debian-based (Debian, Ubuntu, etc.)
30+ kitty -T update sudo apt update && sudo apt upgrade -y
31+ notify-send -i "$iDIR/ja.png" -u low 'Debian/Ubuntu system' 'has been updated.'
32+elif command -v zypper &> /dev/null; then
33+ # openSUSE-based
34+ kitty -T update sudo zypper dup -y
35+ notify-send -i "$iDIR/ja.png" -u low 'openSUSE system' 'has been updated.'
36+else
37+ # Unsupported distro
38+ notify-send -i "$iDIR/error.png" -u critical "Unsupported system" "This script does not support your distribution."
39+ exit 1
40+fi
+33-0scripts/GameMode.sh
@@ -0,0 +1,33 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
3+# Game Mode. Turning off all animations
4+
5+notif="$HOME/.config/swaync/images/ja.png"
6+SCRIPTSDIR="$HOME/.config/hypr/scripts"
7+
8+
9+HYPRGAMEMODE=$(hyprctl getoption animations:enabled | awk 'NR==1{print $2}')
10+if [ "$HYPRGAMEMODE" = 1 ] ; then
11+ hyprctl --batch "\
12+ keyword animations:enabled 0;\
13+ keyword decoration:shadow:enabled 0;\
14+ keyword decoration:blur:enabled 0;\
15+ keyword general:gaps_in 0;\
16+ keyword general:gaps_out 0;\
17+ keyword general:border_size 1;\
18+ keyword decoration:rounding 0"
19+
20+ hyprctl keyword "windowrule opacity 1 override 1 override 1 override, ^(.*)$"
21+ swww kill
22+ notify-send -e -u low -i "$notif" " Gamemode:" " enabled"
23+ exit
24+else
25+ swww-daemon --format xrgb && swww img "$HOME/.config/rofi/.current_wallpaper" &
26+ sleep 0.1
27+ ${SCRIPTSDIR}/WallustSwww.sh
28+ sleep 0.5
29+ ${SCRIPTSDIR}/Refresh.sh
30+ notify-send -e -u normal -i "$notif" " Gamemode:" " disabled"
31+ exit
32+fi
33+hyprctl reload
+23-0scripts/Hypridle.sh
@@ -0,0 +1,23 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
3+# This is for custom version of waybar idle_inhibitor which activates / deactivates hypridle instead
4+
5+PROCESS="hypridle"
6+
7+if [[ "$1" == "status" ]]; then
8+ sleep 1
9+ if pgrep -x "$PROCESS" >/dev/null; then
10+ echo '{"text": "RUNNING", "class": "active", "tooltip": "idle_inhibitor NOT ACTIVE\nLeft Click: Activate\nRight Click: Lock Screen"}'
11+ else
12+ echo '{"text": "NOT RUNNING", "class": "notactive", "tooltip": "idle_inhibitor is ACTIVE\nLeft Click: Deactivate\nRight Click: Lock Screen"}'
13+ fi
14+elif [[ "$1" == "toggle" ]]; then
15+ if pgrep -x "$PROCESS" >/dev/null; then
16+ pkill "$PROCESS"
17+ else
18+ "$PROCESS"
19+ fi
20+else
21+ echo "Usage: $0 {status|toggle}"
22+ exit 1
23+fi
+39-0scripts/KeyBinds.sh
@@ -0,0 +1,39 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
3+# searchable enabled keybinds using rofi
4+
5+# kill yad to not interfere with this binds
6+pkill yad || true
7+
8+# check if rofi is already running
9+if pidof rofi > /dev/null; then
10+ pkill rofi
11+fi
12+
13+# define the config files
14+keybinds_conf="$HOME/.config/hypr/configs/Keybinds.conf"
15+user_keybinds_conf="$HOME/.config/hypr/UserConfigs/UserKeybinds.conf"
16+laptop_conf="$HOME/.config/hypr/UserConfigs/Laptops.conf"
17+rofi_theme="$HOME/.config/rofi/config-keybinds.rasi"
18+msg='☣️ NOTE ☣️: Clicking with Mouse or Pressing ENTER will have NO function'
19+
20+# combine the contents of the keybinds files and filter for keybinds
21+keybinds=$(cat "$keybinds_conf" "$user_keybinds_conf" | grep -E '^bind')
22+
23+# check if laptop.conf exists and add its keybinds if present
24+if [[ -f "$laptop_conf" ]]; then
25+ laptop_binds=$(grep -E '^bind' "$laptop_conf")
26+ keybinds+=$'\n'"$laptop_binds"
27+fi
28+
29+# check for any keybinds to display
30+if [[ -z "$keybinds" ]]; then
31+ echo "no keybinds found."
32+ exit 1
33+fi
34+
35+# replace $mainmod with super in the displayed keybinds for rofi
36+display_keybinds=$(echo "$keybinds" | sed 's/\$mainMod/SUPER/g')
37+
38+# use rofi to display the keybinds with the modified content
39+echo "$display_keybinds" | rofi -dmenu -i -config "$rofi_theme" -mesg "$msg"
+72-0scripts/KeyHints.sh
@@ -0,0 +1,72 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
3+
4+# GDK BACKEND. Change to either wayland or x11 if having issues
5+BACKEND=wayland
6+
7+# Check if rofi or yad is running and kill them if they are
8+if pidof rofi >/dev/null; then
9+ pkill rofi
10+fi
11+
12+if pidof yad >/dev/null; then
13+ pkill yad
14+fi
15+
16+# Launch yad with calculated width and height
17+GDK_BACKEND=$BACKEND yad \
18+ --center \
19+ --title="KooL Quick Cheat Sheet" \
20+ --no-buttons \
21+ --list \
22+ --column=Key: \
23+ --column=Description: \
24+ --column=Command: \
25+ --timeout-indicator=bottom \
26+ "ESC" "close this app" "" " = " "SUPER KEY (Windows Key Button)" "(SUPER KEY)" \
27+ " SHIFT K" "Searchable Keybinds" "(Search all Keybinds via rofi)" \
28+ " SHIFT E" "KooL Hyprland Settings Menu" "" \
29+ "" "" "" \
30+ " enter" "Terminal" "(kitty)" \
31+ " SHIFT enter" "DropDown Terminal" " Q to close" \
32+ " B" "Launch Browser" "(Default browser)" \
33+ " A" "Desktop Overview" "(AGS - if opted to install)" \
34+ " D" "Application Launcher" "(rofi-wayland)" \
35+ " E" "Open File Manager" "(Nautilus AKA Files)" \
36+ " S" "Google Search using rofi" "(rofi)" \
37+ " Q" "close active window" "(not kill)" \
38+ " Shift Q " "kills an active window" "(kill)" \
39+ " ALT mouse scroll up/down " "Desktop Zoom" "Desktop Magnifier" \
40+ " Alt V" "Clipboard Manager" "(cliphist)" \
41+ " W" "Choose wallpaper" "(Wallpaper Menu)" \
42+ " Shift W" "Choose wallpaper effects" "(imagemagick + swww)" \
43+ "CTRL ALT W" "Random wallpaper" "(via swww)" \
44+ " CTRL ALT B" "Hide/UnHide Waybar" "waybar" \
45+ " CTRL B" "Choose waybar styles" "(waybar styles)" \
46+ " ALT B" "Choose waybar layout" "(waybar layout)" \
47+ " ALT R" "Reload Waybar swaync Rofi" "CHECK NOTIFICATION FIRST!!!" \
48+ " SHIFT N" "Launch Notification Panel" "swaync Notification Center" \
49+ " Print" "screenshot" "(grim)" \
50+ " Shift Print" "screenshot region" "(grim + slurp)" \
51+ " Shift S" "screenshot region" "(swappy)" \
52+ " CTRL Print" "screenshot timer 5 secs " "(grim)" \
53+ " CTRL SHIFT Print" "screenshot timer 10 secs " "(grim)" \
54+ "ALT Print" "Screenshot active window" "active window only" \
55+ "CTRL ALT P" "power-menu" "(wlogout)" \
56+ "CTRL ALT L" "screen lock" "(hyprlock)" \
57+ "CTRL ALT Del" "Hyprland Exit" "(NOTE: Hyprland Will exit immediately)" \
58+ " SHIFT F" "Fullscreen" "Toggles to full screen" \
59+ " CTL F" "Fake Fullscreen" "Toggles to fake full screen" \
60+ " ALT L" "Toggle Dwindle | Master Layout" "Hyprland Layout" \
61+ " SPACEBAR" "Toggle float" "single window" \
62+ " ALT SPACEBAR" "Toggle all windows to float" "all windows" \
63+ " ALT O" "Toggle Blur" "normal or less blur" \
64+ " CTRL O" "Toggle Opaque ON or OFF" "on active window only" \
65+ " Shift A" "Animations Menu" "Choose Animations via rofi" \
66+ " CTRL R" "Rofi Themes Menu" "Choose Rofi Themes via rofi" \
67+ " CTRL Shift R" "Rofi Themes Menu v2" "Choose Rofi Themes via Theme Selector (modified)" \
68+ " SHIFT G" "Gamemode! All animations OFF or ON" "toggle" \
69+ " ALT E" "Rofi Emoticons" "Emoticon" \
70+ " H" "Launch this Quick Cheat Sheet" "" \
71+ "" "" "" \
72+ "More tips:" "https://github.com/JaKooLit/Hyprland-Dots/wiki" ""\
+11-0scripts/KillActiveProcess.sh
@@ -0,0 +1,11 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
3+
4+# Copied from Discord post. Thanks to @Zorg
5+
6+
7+# Get id of an active window
8+active_pid=$(hyprctl activewindow | grep -o 'pid: [0-9]*' | cut -d' ' -f2)
9+
10+# Close active window
11+kill $active_pid
+45-0scripts/Kitty_themes.sh
@@ -0,0 +1,45 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
3+# Kitty Themes Source https://github.com/dexpota/kitty-themes #
4+
5+# Define directories and variables
6+kitty_themes_DiR="$HOME/.config/kitty/kitty-themes" # Kitty Themes Directory
7+theme_path="$kitty_themes_DiR/$theme.conf"
8+kitty_config="$HOME/.config/kitty/kitty.conf"
9+iDIR="$HOME/.config/swaync/images"
10+rofi_theme="$HOME/.config/rofi/config-kitty-theme.rasi"
11+
12+# Check if the Kitty Themes directory exists
13+if [ ! -d "$kitty_themes_DiR" ]; then
14+ notify-send -i "$iDIR/error.png" "E-R-R-O-R" "Unable to locate Kitty Themes directory. Exiting....."
15+ exit 1
16+fi
17+
18+# List the kitty-theme files from the themes directory
19+theme=$(ls "$kitty_themes_DiR"/*.conf | xargs -n 1 basename | sed 's/\.conf$//' | rofi -dmenu -config $rofi_theme)
20+
21+# Check if no theme was selected, and exit if empty
22+if [ -z "$theme" ]; then
23+ notify-send -u low -i "$iDIR/note.png" "No kitty theme" "selected. Exiting....."
24+ exit 1
25+fi
26+
27+# Uncomment the line that includes the kitty themes if it's commented
28+if grep -q '#include ./kitty-themes/' "$kitty_config"; then
29+ sed -i "s|#include ./kitty-themes/|include ./kitty-themes/$theme.conf|g" "$kitty_config"
30+
31+ notify-send -u low -i "$iDIR/ja.png" "$theme" "Kitty Theme Loaded"
32+
33+ for pid_kitty in $(pidof kitty); do
34+ kill -SIGUSR1 "$pid_kitty"
35+ done
36+else
37+ # If the line is already uncommented, just add the chosen theme
38+ sed -i "s|include ./kitty-themes/.*|include ./kitty-themes/$theme.conf|g" "$kitty_config"
39+
40+ notify-send -u low -i "$iDIR/ja.png" "$theme" "Kitty Theme Loaded"
41+
42+ for pid_kitty in $(pidof kitty); do
43+ kill -SIGUSR1 "$pid_kitty"
44+ done
45+fi
+73-0scripts/KooLsDotsUpdate.sh
@@ -0,0 +1,73 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
3+# simple bash script to check if update is available by comparing local version and github version
4+
5+# Local Paths
6+local_dir="$HOME/.config/hypr"
7+iDIR="$HOME/.config/swaync/images/"
8+local_version=$(ls $local_dir/v* 2>/dev/null | sort -V | tail -n 1 | sed 's/.*v\(.*\)/\1/')
9+KooL_Dots_DIR="$HOME/Hyprland-Dots"
10+
11+# exit if cannot find local version
12+if [ -z "$local_version" ]; then
13+ notify-send -i "$iDIR/error.png" "ERROR "!?!?!!"" "Unable to find KooL's dots version . exiting.... "
14+ exit 1
15+fi
16+
17+# GitHub URL - KooL's dots
18+branch="main"
19+github_url="https://github.com/JaKooLit/Hyprland-Dots/tree/$branch/config/hypr/"
20+
21+# Fetch the version from GitHub URL - KooL's dots
22+github_version=$(curl -s $github_url | grep -o 'v[0-9]\+\.[0-9]\+\.[0-9]\+' | sort -V | tail -n 1 | sed 's/v//')
23+
24+# Cant find GitHub URL - KooL's dots version
25+if [ -z "$github_version" ]; then
26+ exit 1
27+fi
28+
29+# Comparing local and github versions
30+if [ "$(echo -e "$github_version\n$local_version" | sort -V | head -n 1)" = "$github_version" ]; then
31+ notify-send -i "$iDIR/note.png" "KooL Hyprland:" "No update available"
32+ exit 0
33+else
34+ # update available
35+ notify_cmd_base="notify-send -t 10000 -A action1=Update -A action2=NO -h string:x-canonical-private-synchronous:shot-notify"
36+ notify_cmd_shot="${notify_cmd_base} -i $iDIR/ja.png"
37+
38+ response=$($notify_cmd_shot "KooL Hyprland:" "Update available! Update now?")
39+
40+ case "$response" in
41+ "action1")
42+ if [ -d $KooL_Dots_DIR ]; then
43+ if ! command -v kitty &> /dev/null; then
44+ notify-send -i "$iDIR/error.png" "E-R-R-O-R" "Kitty terminal not found. Please install Kitty terminal."
45+ exit 1
46+ fi
47+ kitty -e bash -c "
48+ cd $KooL_Dots_DIR &&
49+ git stash &&
50+ git pull &&
51+ ./copy.sh &&
52+ notify-send -u critical -i "$iDIR/ja.png" 'Update Completed:' 'Kindly log out and relogin to take effect'
53+ "
54+
55+ else
56+ if ! command -v kitty &> /dev/null; then
57+ notify-send -i "$iDIR/error.png" "E-R-R-O-R" "Kitty terminal not found. Please install Kitty terminal."
58+ exit 1
59+ fi
60+ kitty -e bash -c "
61+ git clone --depth=1 https://github.com/JaKooLit/Hyprland-Dots.git $KooL_Dots_DIR &&
62+ cd $KooL_Dots_DIR &&
63+ chmod +x copy.sh &&
64+ ./copy.sh &&
65+ notify-send -u critical -i "$iDIR/ja.png" 'Update Completed:' 'Kindly log out and relogin to take effect'
66+ "
67+ fi
68+ ;;
69+ "action2")
70+ exit 0
71+ ;;
72+ esac
73+fi
+117-0scripts/Kool_Quick_Settings.sh
@@ -0,0 +1,117 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
3+# Rofi menu for KooL Hyprland Quick Settings (SUPER SHIFT E)
4+
5+# Modify this config file for default terminal and EDITOR
6+config_file="$HOME/.config/hypr/UserConfigs/01-UserDefaults.conf"
7+
8+tmp_config_file=$(mktemp)
9+sed 's/^\$//g; s/ = /=/g' "$config_file" > "$tmp_config_file"
10+source "$tmp_config_file"
11+# ##################################### #
12+
13+# variables
14+configs="$HOME/.config/hypr/configs"
15+UserConfigs="$HOME/.config/hypr/UserConfigs"
16+rofi_theme="$HOME/.config/rofi/config-edit.rasi"
17+msg=' ⁉️ Choose what to do ⁉️'
18+iDIR="$HOME/.config/swaync/images"
19+scriptsDir="$HOME/.config/hypr/scripts"
20+UserScripts="$HOME/.config/hypr/UserScripts"
21+
22+# Function to display the menu options without numbers
23+menu() {
24+ cat <<EOF
25+view/edit User Defaults
26+view/edit ENV variables
27+view/edit Window Rules
28+view/edit User Keybinds
29+view/edit User Settings
30+view/edit Startup Apps
31+view/edit Decorations
32+view/edit Animations
33+view/edit Laptop Keybinds
34+view/edit Default Keybinds
35+Choose Kitty Terminal Theme
36+Configure Monitors (nwg-displays)
37+Configure Workspace Rules (nwg-displays)
38+GTK Settings (nwg-look)
39+QT Apps Settings (qt6ct)
40+QT Apps Settings (qt5ct)
41+Choose Hyprland Animations
42+Choose Monitor Profiles
43+Choose Rofi Themes
44+Search for Keybinds
45+Toggle Game Mode
46+Switch Dark-Light Theme
47+EOF
48+}
49+
50+# Main function to handle menu selection
51+main() {
52+ choice=$(menu | rofi -i -dmenu -config $rofi_theme -mesg "$msg")
53+
54+ # Map choices to corresponding files
55+ case "$choice" in
56+ "view/edit User Defaults") file="$UserConfigs/01-UserDefaults.conf" ;;
57+ "view/edit ENV variables") file="$UserConfigs/ENVariables.conf" ;;
58+ "view/edit Window Rules") file="$UserConfigs/WindowRules.conf" ;;
59+ "view/edit User Keybinds") file="$UserConfigs/UserKeybinds.conf" ;;
60+ "view/edit User Settings") file="$UserConfigs/UserSettings.conf" ;;
61+ "view/edit Startup Apps") file="$UserConfigs/Startup_Apps.conf" ;;
62+ "view/edit Decorations") file="$UserConfigs/UserDecorations.conf" ;;
63+ "view/edit Animations") file="$UserConfigs/UserAnimations.conf" ;;
64+ "view/edit Laptop Keybinds") file="$UserConfigs/Laptops.conf" ;;
65+ "view/edit Default Keybinds") file="$configs/Keybinds.conf" ;;
66+ "Choose Kitty Terminal Theme") $scriptsDir/Kitty_themes.sh ;;
67+ "Configure Monitors (nwg-displays)")
68+ if ! command -v nwg-displays &>/dev/null; then
69+ notify-send -i "$iDIR/error.png" "E-R-R-O-R" "Install nwg-displays first"
70+ exit 1
71+ fi
72+ nwg-displays ;;
73+ "Configure Workspace Rules (nwg-displays)")
74+ if ! command -v nwg-displays &>/dev/null; then
75+ notify-send -i "$iDIR/error.png" "E-R-R-O-R" "Install nwg-displays first"
76+ exit 1
77+ fi
78+ nwg-displays ;;
79+ "GTK Settings (nwg-look)")
80+ if ! command -v nwg-look &>/dev/null; then
81+ notify-send -i "$iDIR/error.png" "E-R-R-O-R" "Install nwg-look first"
82+ exit 1
83+ fi
84+ nwg-look ;;
85+ "QT Apps Settings (qt6ct)")
86+ if ! command -v qt6ct &>/dev/null; then
87+ notify-send -i "$iDIR/error.png" "E-R-R-O-R" "Install qt6ct first"
88+ exit 1
89+ fi
90+ qt6ct ;;
91+ "QT Apps Settings (qt5ct)")
92+ if ! command -v qt5ct &>/dev/null; then
93+ notify-send -i "$iDIR/error.png" "E-R-R-O-R" "Install qt5ct first"
94+ exit 1
95+ fi
96+ qt5ct ;;
97+ "Choose Hyprland Animations") $scriptsDir/Animations.sh ;;
98+ "Choose Monitor Profiles") $scriptsDir/MonitorProfiles.sh ;;
99+ "Choose Rofi Themes") $scriptsDir/RofiThemeSelector.sh ;;
100+ "Search for Keybinds") $scriptsDir/KeyBinds.sh ;;
101+ "Toggle Game Mode") $scriptsDir/GameMode.sh ;;
102+ "Switch Dark-Light Theme") $scriptsDir/DarkLight.sh ;;
103+ *) return ;; # Do nothing for invalid choices
104+ esac
105+
106+ # Open the selected file in the terminal with the text editor
107+ if [ -n "$file" ]; then
108+ $term -e $edit "$file"
109+ fi
110+}
111+
112+# Check if rofi is already running
113+if pidof rofi > /dev/null; then
114+ pkill rofi
115+fi
116+
117+main
+6-0scripts/LiveMicTest.sh
@@ -0,0 +1,6 @@
1+#!/bin/bash
2+if systemctl --user is-active --quiet live-mic; then
3+ systemctl --user stop live-mic
4+else
5+ systemctl --user start live-mic
6+fi
+7-0scripts/LockScreen.sh
@@ -0,0 +1,7 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
3+
4+# For Hyprlock
5+#pidof hyprlock || hyprlock -q
6+
7+loginctl lock-session
+61-0scripts/MediaCtrl.sh
@@ -0,0 +1,61 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
3+# Playerctl
4+
5+music_icon="$HOME/.config/swaync/icons/music.png"
6+
7+# Play the next track
8+play_next() {
9+ playerctl next
10+ show_music_notification
11+}
12+
13+# Play the previous track
14+play_previous() {
15+ playerctl previous
16+ show_music_notification
17+}
18+
19+# Toggle play/pause
20+toggle_play_pause() {
21+ playerctl play-pause
22+ show_music_notification
23+}
24+
25+# Stop playback
26+stop_playback() {
27+ playerctl stop
28+ notify-send -e -u low -i $music_icon " Playback:" " Stopped"
29+}
30+
31+# Display notification with song information
32+show_music_notification() {
33+ status=$(playerctl status)
34+ if [[ "$status" == "Playing" ]]; then
35+ song_title=$(playerctl metadata title)
36+ song_artist=$(playerctl metadata artist)
37+ notify-send -e -u low -i $music_icon "Now Playing:" "$song_title by $song_artist"
38+ elif [[ "$status" == "Paused" ]]; then
39+ notify-send -e -u low -i $music_icon " Playback:" " Paused"
40+ fi
41+}
42+
43+# Get media control action from command line argument
44+case "$1" in
45+ "--nxt")
46+ play_next
47+ ;;
48+ "--prv")
49+ play_previous
50+ ;;
51+ "--pause")
52+ toggle_play_pause
53+ ;;
54+ "--stop")
55+ stop_playback
56+ ;;
57+ *)
58+ echo "Usage: $0 [--nxt|--prv|--pause|--stop]"
59+ exit 1
60+ ;;
61+esac
+42-0scripts/MonitorProfiles.sh
@@ -0,0 +1,42 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
3+# For applying Pre-configured Monitor Profiles
4+
5+# Check if rofi is already running
6+if pidof rofi > /dev/null; then
7+ pkill rofi
8+fi
9+
10+# Variables
11+iDIR="$HOME/.config/swaync/images"
12+SCRIPTSDIR="$HOME/.config/hypr/scripts"
13+monitor_dir="$HOME/.config/hypr/Monitor_Profiles"
14+target="$HOME/.config/hypr/monitors.conf"
15+rofi_theme="$HOME/.config/rofi/config-Monitors.rasi"
16+msg='❗NOTE:❗ This will overwrite $HOME/.config/hypr/monitors.conf'
17+
18+# Define the list of files to ignore
19+ignore_files=(
20+ "README"
21+)
22+
23+# list of Monitor Profiles, sorted alphabetically with numbers first
24+mon_profiles_list=$(find -L "$monitor_dir" -maxdepth 1 -type f | sed 's/.*\///' | sed 's/\.conf$//' | sort -V)
25+
26+# Remove ignored files from the list
27+for ignored_file in "${ignore_files[@]}"; do
28+ mon_profiles_list=$(echo "$mon_profiles_list" | grep -v -E "^$ignored_file$")
29+done
30+
31+# Rofi Menu
32+chosen_file=$(echo "$mon_profiles_list" | rofi -i -dmenu -config $rofi_theme -mesg "$msg")
33+
34+if [[ -n "$chosen_file" ]]; then
35+ full_path="$monitor_dir/$chosen_file.conf"
36+ cp "$full_path" "$target"
37+
38+ notify-send -u low -i "$iDIR/ja.png" "$chosen_file" "Monitor Profile Loaded"
39+fi
40+
41+sleep 1
42+${SCRIPTSDIR}/RefreshNoWaybar.sh &
+2-0scripts/OpenVolume.sh
@@ -0,0 +1,2 @@
1+#!/bin/bash
2+pavucontrol &
+21-0scripts/Polkit-NixOS.sh
@@ -0,0 +1,21 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
3+# For NixOS starting of polkit-gnome. Dec 2023, the settings stated in NixOS wiki does not work so have to manual start it
4+
5+# Find all polkit-gnome executables in the Nix store
6+polkit_gnome_paths=$(find /nix/store -name 'polkit-gnome-authentication-agent-1' -type f 2>/dev/null)
7+
8+for polkit_gnome_path in $polkit_gnome_paths; do
9+ # Extract the directory containing the executable
10+ polkit_gnome_dir=$(dirname "$polkit_gnome_path")
11+
12+ # Check if the executable is valid and exists
13+ if [ -x "$polkit_gnome_dir/polkit-gnome-authentication-agent-1" ]; then
14+ # Start the Polkit-GNOME Authentication Agent
15+ "$polkit_gnome_dir/polkit-gnome-authentication-agent-1" &
16+ exit 0
17+ fi
18+done
19+
20+# If no valid executable is found, report an error
21+echo "No valid Polkit-GNOME Authentication Agent executable found."
+34-0scripts/Polkit.sh
@@ -0,0 +1,34 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
3+# This is for polkits, it will start from top and will stop if the top is executed
4+
5+# Polkit possible paths files to check
6+polkit=(
7+ "/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1"
8+ "/usr/libexec/hyprpolkitagent"
9+ "/usr/lib/hyprpolkitagent"
10+ "/usr/lib/hyprpolkitagent/hyprpolkitagent"
11+ "/usr/lib/polkit-kde-authentication-agent-1"
12+ "/usr/lib/polkit-gnome-authentication-agent-1"
13+ "/usr/libexec/polkit-gnome-authentication-agent-1"
14+ "/usr/libexec/polkit-mate-authentication-agent-1"
15+ "/usr/lib/x86_64-linux-gnu/libexec/polkit-kde-authentication-agent-1"
16+ "/usr/lib/policykit-1-gnome/polkit-gnome-authentication-agent-1"
17+)
18+
19+executed=false # Flag to track if a file has been executed
20+
21+# Loop through the list of files
22+for file in "${polkit[@]}"; do
23+ if [ -e "$file" ]; then
24+ echo "File $file found, executing command..."
25+ exec "$file"
26+ executed=true
27+ break
28+ fi
29+done
30+
31+# If none of the files were found, you can add a fallback command here
32+if [ "$executed" == false ]; then
33+ echo "None of the specified files were found. Install a Polkit"
34+fi
+16-0scripts/PortalHyprland.sh
@@ -0,0 +1,16 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
3+# For manually starting xdg-desktop-portal-hyprland
4+
5+sleep 1
6+killall xdg-desktop-portal-hyprland
7+killall xdg-desktop-portal-wlr
8+killall xdg-desktop-portal-gnome
9+killall xdg-desktop-portal
10+sleep 1
11+/usr/lib/xdg-desktop-portal-hyprland &
12+/usr/libexec/xdg-desktop-portal-hyprland &
13+sleep 2
14+/usr/lib/xdg-desktop-portal &
15+/usr/libexec/xdg-desktop-portal &
16+
+52-0scripts/Refresh.sh
@@ -0,0 +1,52 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
3+# Scripts for refreshing ags, waybar, rofi, swaync, wallust
4+
5+SCRIPTSDIR=$HOME/.config/hypr/scripts
6+UserScripts=$HOME/.config/hypr/UserScripts
7+
8+# Define file_exists function
9+file_exists() {
10+ if [ -e "$1" ]; then
11+ return 0 # File exists
12+ else
13+ return 1 # File does not exist
14+ fi
15+}
16+
17+# Kill already running processes
18+_ps=(waybar rofi swaync ags)
19+for _prs in "${_ps[@]}"; do
20+ if pidof "${_prs}" >/dev/null; then
21+ pkill "${_prs}"
22+ fi
23+done
24+
25+# added since wallust sometimes not applying
26+killall -SIGUSR2 waybar
27+
28+# quit ags & relaunch ags
29+ags -q && ags &
30+
31+# some process to kill
32+for pid in $(pidof waybar rofi swaync ags swaybg); do
33+ kill -SIGUSR1 "$pid"
34+done
35+
36+#Restart waybar
37+sleep 1
38+waybar &
39+
40+# relaunch swaync
41+sleep 0.5
42+swaync > /dev/null 2>&1 &
43+# reload swaync
44+swaync-client --reload-config
45+
46+# Relaunching rainbow borders if the script exists
47+sleep 1
48+if file_exists "${UserScripts}/RainbowBorders.sh"; then
49+ ${UserScripts}/RainbowBorders.sh &
50+fi
51+
52+exit 0
+44-0scripts/RefreshNoWaybar.sh
@@ -0,0 +1,44 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
3+
4+# Modified version of Refresh.sh but waybar wont refresh
5+# Used by automatic wallpaper change
6+# Modified inorder to refresh rofi background, Wallust, SwayNC only
7+
8+SCRIPTSDIR=$HOME/.config/hypr/scripts
9+UserScripts=$HOME/.config/hypr/UserScripts
10+
11+# Define file_exists function
12+file_exists() {
13+ if [ -e "$1" ]; then
14+ return 0 # File exists
15+ else
16+ return 1 # File does not exist
17+ fi
18+}
19+
20+# Kill already running processes
21+_ps=(rofi)
22+for _prs in "${_ps[@]}"; do
23+ if pidof "${_prs}" >/dev/null; then
24+ pkill "${_prs}"
25+ fi
26+done
27+
28+# quit ags & relaunch ags
29+ags -q && ags &
30+
31+# Wallust refresh
32+${SCRIPTSDIR}/WallustSwww.sh &
33+
34+# reload swaync
35+swaync-client --reload-config
36+
37+# Relaunching rainbow borders if the script exists
38+sleep 1
39+if file_exists "${UserScripts}/RainbowBorders.sh"; then
40+ ${UserScripts}/RainbowBorders.sh &
41+fi
42+
43+
44+exit 0
+1871-0scripts/RofiEmoji.sh
@@ -0,0 +1,1871 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
3+
4+# Variables
5+rofi_theme="$HOME/.config/rofi/config-emoji.rasi"
6+msg='** note ** 👀 Click or Return to choose || Ctrl V to Paste'
7+
8+# Check if rofi is already running
9+if pidof rofi > /dev/null; then
10+ pkill rofi
11+fi
12+
13+sed '1,/^# # DATA # #$/d' "$0" | \
14+rofi -i -dmenu -mesg "$msg" -config $rofi_theme | \
15+awk '{print $1}' | \
16+head -n 1 | \
17+tr -d '\n' | \
18+wl-copy
19+
20+exit
21+
22+# # DATA # #
23+😀 grinning face face smile happy joy :D grin
24+😃 grinning face with big eyes face happy joy haha :D :) smile funny
25+😄 grinning face with smiling eyes face happy joy funny haha laugh like :D :) smile
26+😁 beaming face with smiling eyes face happy smile joy kawaii
27+😆 grinning squinting face happy joy lol satisfied haha face glad XD laugh
28+😅 grinning face with sweat face hot happy laugh sweat smile relief
29+🤣 rolling on the floor laughing face rolling floor laughing lol haha rofl
30+😂 face with tears of joy face cry tears weep happy happytears haha
31+🙂 slightly smiling face face smile
32+🙃 upside down face face flipped silly smile
33+😉 winking face face happy mischievous secret ;) smile eye
34+😊 smiling face with smiling eyes face smile happy flushed crush embarrassed shy joy
35+😇 smiling face with halo face angel heaven halo
36+🥰 smiling face with hearts face love like affection valentines infatuation crush hearts adore
37+😍 smiling face with heart eyes face love like affection valentines infatuation crush heart
38+🤩 star struck face smile starry eyes grinning
39+😘 face blowing a kiss face love like affection valentines infatuation kiss
40+😗 kissing face love like face 3 valentines infatuation kiss
41+☺️ smiling face face blush massage happiness
42+😚 kissing face with closed eyes face love like affection valentines infatuation kiss
43+😙 kissing face with smiling eyes face affection valentines infatuation kiss
44+😋 face savoring food happy joy tongue smile face silly yummy nom delicious savouring
45+😛 face with tongue face prank childish playful mischievous smile tongue
46+😜 winking face with tongue face prank childish playful mischievous smile wink tongue
47+🤪 zany face face goofy crazy
48+😝 squinting face with tongue face prank playful mischievous smile tongue
49+🤑 money mouth face face rich dollar money
50+🤗 hugging face face smile hug
51+🤭 face with hand over mouth face whoops shock surprise
52+🤫 shushing face face quiet shhh
53+🤔 thinking face face hmmm think consider
54+🤐 zipper mouth face face sealed zipper secret
55+🤨 face with raised eyebrow face distrust scepticism disapproval disbelief surprise
56+😐 neutral face indifference meh :| neutral
57+😑 expressionless face face indifferent - - meh deadpan
58+😶 face without mouth face hellokitty
59+😏 smirking face face smile mean prank smug sarcasm
60+😒 unamused face indifference bored straight face serious sarcasm unimpressed skeptical dubious side eye
61+🙄 face with rolling eyes face eyeroll frustrated
62+😬 grimacing face face grimace teeth
63+🤥 lying face face lie pinocchio
64+😌 relieved face face relaxed phew massage happiness
65+😔 pensive face face sad depressed upset
66+😪 sleepy face face tired rest nap
67+🤤 drooling face face
68+😴 sleeping face face tired sleepy night zzz
69+😷 face with medical mask face sick ill disease
70+🤒 face with thermometer sick temperature thermometer cold fever
71+🤕 face with head bandage injured clumsy bandage hurt
72+🤢 nauseated face face vomit gross green sick throw up ill
73+🤮 face vomiting face sick
74+🤧 sneezing face face gesundheit sneeze sick allergy
75+🥵 hot face face feverish heat red sweating
76+🥶 cold face face blue freezing frozen frostbite icicles
77+🥴 woozy face face dizzy intoxicated tipsy wavy
78+😵 dizzy face spent unconscious xox dizzy
79+🤯 exploding head face shocked mind blown
80+🤠 cowboy hat face face cowgirl hat
81+🥳 partying face face celebration woohoo
82+😎 smiling face with sunglasses face cool smile summer beach sunglass
83+🤓 nerd face face nerdy geek dork
84+🧐 face with monocle face stuffy wealthy
85+😕 confused face face indifference huh weird hmmm :/
86+😟 worried face face concern nervous :(
87+🙁 slightly frowning face face frowning disappointed sad upset
88+☹️ frowning face face sad upset frown
89+😮 face with open mouth face surprise impressed wow whoa :O
90+😯 hushed face face woo shh
91+😲 astonished face face xox surprised poisoned
92+😳 flushed face face blush shy flattered
93+🥺 pleading face face begging mercy
94+😦 frowning face with open mouth face aw what
95+😧 anguished face face stunned nervous
96+😨 fearful face face scared terrified nervous oops huh
97+😰 anxious face with sweat face nervous sweat
98+😥 sad but relieved face face phew sweat nervous
99+😢 crying face face tears sad depressed upset :'(
100+😭 loudly crying face face cry tears sad upset depressed
101+😱 face screaming in fear face munch scared omg
102+😖 confounded face face confused sick unwell oops :S
103+😣 persevering face face sick no upset oops
104+😞 disappointed face face sad upset depressed :(
105+😓 downcast face with sweat face hot sad tired exercise
106+😩 weary face face tired sleepy sad frustrated upset
107+😫 tired face sick whine upset frustrated
108+🥱 yawning face tired sleepy
109+😤 face with steam from nose face gas phew proud pride
110+😡 pouting face angry mad hate despise
111+😠 angry face mad face annoyed frustrated
112+🤬 face with symbols on mouth face swearing cursing cussing profanity expletive
113+😈 smiling face with horns devil horns
114+👿 angry face with horns devil angry horns
115+💀 skull dead skeleton creepy death
116+☠️ skull and crossbones poison danger deadly scary death pirate evil
117+💩 pile of poo hankey shitface fail turd shit
118+🤡 clown face face
119+👹 ogre monster red mask halloween scary creepy devil demon japanese ogre
120+👺 goblin red evil mask monster scary creepy japanese goblin
121+👻 ghost halloween spooky scary
122+👽 alien UFO paul weird outer space
123+👾 alien monster game arcade play
124+🤖 robot computer machine bot
125+😺 grinning cat animal cats happy smile
126+😸 grinning cat with smiling eyes animal cats smile
127+😹 cat with tears of joy animal cats haha happy tears
128+😻 smiling cat with heart eyes animal love like affection cats valentines heart
129+😼 cat with wry smile animal cats smirk
130+😽 kissing cat animal cats kiss
131+🙀 weary cat animal cats munch scared scream
132+😿 crying cat animal tears weep sad cats upset cry
133+😾 pouting cat animal cats
134+🙈 see no evil monkey monkey animal nature haha
135+🙉 hear no evil monkey animal monkey nature
136+🙊 speak no evil monkey monkey animal nature omg
137+💋 kiss mark face lips love like affection valentines
138+💌 love letter email like affection envelope valentines
139+💘 heart with arrow love like heart affection valentines
140+💝 heart with ribbon love valentines
141+💖 sparkling heart love like affection valentines
142+💗 growing heart like love affection valentines pink
143+💓 beating heart love like affection valentines pink heart
144+💞 revolving hearts love like affection valentines
145+💕 two hearts love like affection valentines heart
146+💟 heart decoration purple-square love like
147+❣️ heart exclamation decoration love
148+💔 broken heart sad sorry break heart heartbreak
149+❤️ red heart love like valentines
150+🧡 orange heart love like affection valentines
151+💛 yellow heart love like affection valentines
152+💚 green heart love like affection valentines
153+💙 blue heart love like affection valentines
154+💜 purple heart love like affection valentines
155+🤎 brown heart coffee
156+🖤 black heart evil
157+🤍 white heart pure
158+💯 hundred points score perfect numbers century exam quiz test pass hundred
159+💢 anger symbol angry mad
160+💥 collision bomb explode explosion collision blown
161+💫 dizzy star sparkle shoot magic
162+💦 sweat droplets water drip oops
163+💨 dashing away wind air fast shoo fart smoke puff
164+🕳️ hole embarrassing
165+💣 bomb boom explode explosion terrorism
166+💬 speech balloon bubble words message talk chatting
167+👁️‍🗨️ eye in speech bubble info
168+🗨️ left speech bubble words message talk chatting
169+🗯️ right anger bubble caption speech thinking mad
170+💭 thought balloon bubble cloud speech thinking dream
171+💤 zzz sleepy tired dream
172+👋 waving hand hands gesture goodbye solong farewell hello hi palm
173+🤚 raised back of hand fingers raised backhand
174+🖐️ hand with fingers splayed hand fingers palm
175+✋ raised hand fingers stop highfive palm ban
176+🖖 vulcan salute hand fingers spock star trek
177+👌 ok hand fingers limbs perfect ok okay
178+🤏 pinching hand tiny small size
179+✌️ victory hand fingers ohyeah hand peace victory two
180+🤞 crossed fingers good lucky
181+🤟 love you gesture hand fingers gesture
182+🤘 sign of the horns hand fingers evil eye sign of horns rock on
183+🤙 call me hand hands gesture shaka
184+👈 backhand index pointing left direction fingers hand left
185+👉 backhand index pointing right fingers hand direction right
186+👆 backhand index pointing up fingers hand direction up
187+🖕 middle finger hand fingers rude middle flipping
188+👇 backhand index pointing down fingers hand direction down
189+☝️ index pointing up hand fingers direction up
190+👍 thumbs up thumbsup yes awesome good agree accept cool hand like +1
191+👎 thumbs down thumbsdown no dislike hand -1
192+✊ raised fist fingers hand grasp
193+👊 oncoming fist angry violence fist hit attack hand
194+🤛 left facing fist hand fistbump
195+🤜 right facing fist hand fistbump
196+👏 clapping hands hands praise applause congrats yay
197+🙌 raising hands gesture hooray yea celebration hands
198+👐 open hands fingers butterfly hands open
199+🤲 palms up together hands gesture cupped prayer
200+🤝 handshake agreement shake
201+🙏 folded hands please hope wish namaste highfive pray
202+✍️ writing hand lower left ballpoint pen stationery write compose
203+💅 nail polish beauty manicure finger fashion nail
204+🤳 selfie camera phone
205+💪 flexed biceps arm flex hand summer strong biceps
206+🦾 mechanical arm accessibility
207+🦿 mechanical leg accessibility
208+🦵 leg kick limb
209+🦶 foot kick stomp
210+👂 ear face hear sound listen
211+🦻 ear with hearing aid accessibility
212+👃 nose smell sniff
213+🧠 brain smart intelligent
214+🦷 tooth teeth dentist
215+🦴 bone skeleton
216+👀 eyes look watch stalk peek see
217+👁️ eye face look see watch stare
218+👅 tongue mouth playful
219+👄 mouth mouth kiss
220+👶 baby child boy girl toddler
221+🧒 child gender-neutral young
222+👦 boy man male guy teenager
223+👧 girl female woman teenager
224+🧑 person gender-neutral person
225+👱 person blond hair hairstyle
226+👨 man mustache father dad guy classy sir moustache
227+🧔 man beard person bewhiskered
228+👨‍🦰 man red hair hairstyle
229+👨‍🦱 man curly hair hairstyle
230+👨‍🦳 man white hair old elder
231+👨‍🦲 man bald hairless
232+👩 woman female girls lady
233+👩‍🦰 woman red hair hairstyle
234+🧑‍🦰 person red hair hairstyle
235+👩‍🦱 woman curly hair hairstyle
236+🧑‍🦱 person curly hair hairstyle
237+👩‍🦳 woman white hair old elder
238+🧑‍🦳 person white hair elder old
239+👩‍🦲 woman bald hairless
240+🧑‍🦲 person bald hairless
241+👱‍♀️ woman blond hair woman female girl blonde person
242+👱‍♂️ man blond hair man male boy blonde guy person
243+🧓 older person human elder senior gender-neutral
244+👴 old man human male men old elder senior
245+👵 old woman human female women lady old elder senior
246+🙍 person frowning worried
247+🙍‍♂️ man frowning male boy man sad depressed discouraged unhappy
248+🙍‍♀️ woman frowning female girl woman sad depressed discouraged unhappy
249+🙎 person pouting upset
250+🙎‍♂️ man pouting male boy man
251+🙎‍♀️ woman pouting female girl woman
252+🙅 person gesturing no decline
253+🙅‍♂️ man gesturing no male boy man nope
254+🙅‍♀️ woman gesturing no female girl woman nope
255+🙆 person gesturing ok agree
256+🙆‍♂️ man gesturing ok men boy male blue human man
257+🙆‍♀️ woman gesturing ok women girl female pink human woman
258+💁 person tipping hand information
259+💁‍♂️ man tipping hand male boy man human information
260+💁‍♀️ woman tipping hand female girl woman human information
261+🙋 person raising hand question
262+🙋‍♂️ man raising hand male boy man
263+🙋‍♀️ woman raising hand female girl woman
264+🧏 deaf person accessibility
265+🧏‍♂️ deaf man accessibility
266+🧏‍♀️ deaf woman accessibility
267+🙇 person bowing respectiful
268+🙇‍♂️ man bowing man male boy
269+🙇‍♀️ woman bowing woman female girl
270+🤦 person facepalming disappointed
271+🤦‍♂️ man facepalming man male boy disbelief
272+🤦‍♀️ woman facepalming woman female girl disbelief
273+🤷 person shrugging regardless
274+🤷‍♂️ man shrugging man male boy confused indifferent doubt
275+🤷‍♀️ woman shrugging woman female girl confused indifferent doubt
276+🧑‍⚕️ health worker hospital
277+👨‍⚕️ man health worker doctor nurse therapist healthcare man human
278+👩‍⚕️ woman health worker doctor nurse therapist healthcare woman human
279+🧑‍🎓 student learn
280+👨‍🎓 man student graduate man human
281+👩‍🎓 woman student graduate woman human
282+🧑‍🏫 teacher professor
283+👨‍🏫 man teacher instructor professor man human
284+👩‍🏫 woman teacher instructor professor woman human
285+🧑‍⚖️ judge law
286+👨‍⚖️ man judge justice court man human
287+👩‍⚖️ woman judge justice court woman human
288+🧑‍🌾 farmer crops
289+👨‍🌾 man farmer rancher gardener man human
290+👩‍🌾 woman farmer rancher gardener woman human
291+🧑‍🍳 cook food kitchen culinary
292+👨‍🍳 man cook chef man human
293+👩‍🍳 woman cook chef woman human
294+🧑‍🔧 mechanic worker technician
295+👨‍🔧 man mechanic plumber man human wrench
296+👩‍🔧 woman mechanic plumber woman human wrench
297+🧑‍🏭 factory worker labor
298+👨‍🏭 man factory worker assembly industrial man human
299+👩‍🏭 woman factory worker assembly industrial woman human
300+🧑‍💼 office worker business
301+👨‍💼 man office worker business manager man human
302+👩‍💼 woman office worker business manager woman human
303+🧑‍🔬 scientist chemistry
304+👨‍🔬 man scientist biologist chemist engineer physicist man human
305+👩‍🔬 woman scientist biologist chemist engineer physicist woman human
306+🧑‍💻 technologist computer
307+👨‍💻 man technologist coder developer engineer programmer software man human laptop computer
308+👩‍💻 woman technologist coder developer engineer programmer software woman human laptop computer
309+🧑‍🎤 singer song artist performer
310+👨‍🎤 man singer rockstar entertainer man human
311+👩‍🎤 woman singer rockstar entertainer woman human
312+🧑‍🎨 artist painting draw creativity
313+👨‍🎨 man artist painter man human
314+👩‍🎨 woman artist painter woman human
315+🧑‍✈️ pilot fly plane airplane
316+👨‍✈️ man pilot aviator plane man human
317+👩‍✈️ woman pilot aviator plane woman human
318+🧑‍🚀 astronaut outerspace
319+👨‍🚀 man astronaut space rocket man human
320+👩‍🚀 woman astronaut space rocket woman human
321+🧑‍🚒 firefighter fire
322+👨‍🚒 man firefighter fireman man human
323+👩‍🚒 woman firefighter fireman woman human
324+👮 police officer cop
325+👮‍♂️ man police officer man police law legal enforcement arrest 911
326+👮‍♀️ woman police officer woman police law legal enforcement arrest 911 female
327+🕵️ detective human spy detective
328+🕵️‍♂️ man detective crime
329+🕵️‍♀️ woman detective human spy detective female woman
330+💂 guard protect
331+💂‍♂️ man guard uk gb british male guy royal
332+💂‍♀️ woman guard uk gb british female royal woman
333+👷 construction worker labor build
334+👷‍♂️ man construction worker male human wip guy build construction worker labor
335+👷‍♀️ woman construction worker female human wip build construction worker labor woman
336+🤴 prince boy man male crown royal king
337+👸 princess girl woman female blond crown royal queen
338+👳 person wearing turban headdress
339+👳‍♂️ man wearing turban male indian hinduism arabs
340+👳‍♀️ woman wearing turban female indian hinduism arabs woman
341+👲 man with skullcap male boy chinese
342+🧕 woman with headscarf female hijab mantilla tichel
343+🤵 man in tuxedo couple marriage wedding groom
344+👰 bride with veil couple marriage wedding woman bride
345+🤰 pregnant woman baby
346+🤱 breast feeding nursing baby
347+👼 baby angel heaven wings halo
348+🎅 santa claus festival man male xmas father christmas
349+🤶 mrs claus woman female xmas mother christmas
350+🦸 superhero marvel
351+🦸‍♂️ man superhero man male good hero superpowers
352+🦸‍♀️ woman superhero woman female good heroine superpowers
353+🦹 supervillain marvel
354+🦹‍♂️ man supervillain man male evil bad criminal hero superpowers
355+🦹‍♀️ woman supervillain woman female evil bad criminal heroine superpowers
356+🧙 mage magic
357+🧙‍♂️ man mage man male mage sorcerer
358+🧙‍♀️ woman mage woman female mage witch
359+🧚 fairy wings magical
360+🧚‍♂️ man fairy man male
361+🧚‍♀️ woman fairy woman female
362+🧛 vampire blood twilight
363+🧛‍♂️ man vampire man male dracula
364+🧛‍♀️ woman vampire woman female
365+🧜 merperson sea
366+🧜‍♂️ merman man male triton
367+🧜‍♀️ mermaid woman female merwoman ariel
368+🧝 elf magical
369+🧝‍♂️ man elf man male
370+🧝‍♀️ woman elf woman female
371+🧞 genie magical wishes
372+🧞‍♂️ man genie man male
373+🧞‍♀️ woman genie woman female
374+🧟 zombie dead
375+🧟‍♂️ man zombie man male dracula undead walking dead
376+🧟‍♀️ woman zombie woman female undead walking dead
377+💆 person getting massage relax
378+💆‍♂️ man getting massage male boy man head
379+💆‍♀️ woman getting massage female girl woman head
380+💇 person getting haircut hairstyle
381+💇‍♂️ man getting haircut male boy man
382+💇‍♀️ woman getting haircut female girl woman
383+🚶 person walking move
384+🚶‍♂️ man walking human feet steps
385+🚶‍♀️ woman walking human feet steps woman female
386+🧍 person standing still
387+🧍‍♂️ man standing still
388+🧍‍♀️ woman standing still
389+🧎 person kneeling pray respectful
390+🧎‍♂️ man kneeling pray respectful
391+🧎‍♀️ woman kneeling respectful pray
392+🧑‍🦯 person with probing cane blind
393+👨‍🦯 man with probing cane blind
394+👩‍🦯 woman with probing cane blind
395+🧑‍🦼 person in motorized wheelchair disability accessibility
396+👨‍🦼 man in motorized wheelchair disability accessibility
397+👩‍🦼 woman in motorized wheelchair disability accessibility
398+🧑‍🦽 person in manual wheelchair disability accessibility
399+👨‍🦽 man in manual wheelchair disability accessibility
400+👩‍🦽 woman in manual wheelchair disability accessibility
401+🏃 person running move
402+🏃‍♂️ man running man walking exercise race running
403+🏃‍♀️ woman running woman walking exercise race running female
404+💃 woman dancing female girl woman fun
405+🕺 man dancing male boy fun dancer
406+🕴️ man in suit levitating suit business levitate hover jump
407+👯 people with bunny ears perform costume
408+👯‍♂️ men with bunny ears male bunny men boys
409+👯‍♀️ women with bunny ears female bunny women girls
410+🧖 person in steamy room relax spa
411+🧖‍♂️ man in steamy room male man spa steamroom sauna
412+🧖‍♀️ woman in steamy room female woman spa steamroom sauna
413+🧗 person climbing sport
414+🧗‍♂️ man climbing sports hobby man male rock
415+🧗‍♀️ woman climbing sports hobby woman female rock
416+🤺 person fencing sports fencing sword
417+🏇 horse racing animal betting competition gambling luck
418+⛷️ skier sports winter snow
419+🏂 snowboarder sports winter
420+🏌️ person golfing sports business
421+🏌️‍♂️ man golfing sport
422+🏌️‍♀️ woman golfing sports business woman female
423+🏄 person surfing sport sea
424+🏄‍♂️ man surfing sports ocean sea summer beach
425+🏄‍♀️ woman surfing sports ocean sea summer beach woman female
426+🚣 person rowing boat sport move
427+🚣‍♂️ man rowing boat sports hobby water ship
428+🚣‍♀️ woman rowing boat sports hobby water ship woman female
429+🏊 person swimming sport pool
430+🏊‍♂️ man swimming sports exercise human athlete water summer
431+🏊‍♀️ woman swimming sports exercise human athlete water summer woman female
432+⛹️ person bouncing ball sports human
433+⛹️‍♂️ man bouncing ball sport
434+⛹️‍♀️ woman bouncing ball sports human woman female
435+🏋️ person lifting weights sports training exercise
436+🏋️‍♂️ man lifting weights sport
437+🏋️‍♀️ woman lifting weights sports training exercise woman female
438+🚴 person biking sport move
439+🚴‍♂️ man biking sports bike exercise hipster
440+🚴‍♀️ woman biking sports bike exercise hipster woman female
441+🚵 person mountain biking sport move
442+🚵‍♂️ man mountain biking transportation sports human race bike
443+🚵‍♀️ woman mountain biking transportation sports human race bike woman female
444+🤸 person cartwheeling sport gymnastic
445+🤸‍♂️ man cartwheeling gymnastics
446+🤸‍♀️ woman cartwheeling gymnastics
447+🤼 people wrestling sport
448+🤼‍♂️ men wrestling sports wrestlers
449+🤼‍♀️ women wrestling sports wrestlers
450+🤽 person playing water polo sport
451+🤽‍♂️ man playing water polo sports pool
452+🤽‍♀️ woman playing water polo sports pool
453+🤾 person playing handball sport
454+🤾‍♂️ man playing handball sports
455+🤾‍♀️ woman playing handball sports
456+🤹 person juggling performance balance
457+🤹‍♂️ man juggling juggle balance skill multitask
458+🤹‍♀️ woman juggling juggle balance skill multitask
459+🧘 person in lotus position meditate
460+🧘‍♂️ man in lotus position man male meditation yoga serenity zen mindfulness
461+🧘‍♀️ woman in lotus position woman female meditation yoga serenity zen mindfulness
462+🛀 person taking bath clean shower bathroom
463+🛌 person in bed bed rest
464+🧑‍🤝‍🧑 people holding hands friendship
465+👭 women holding hands pair friendship couple love like female people human
466+👫 woman and man holding hands pair people human love date dating like affection valentines marriage
467+👬 men holding hands pair couple love like bromance friendship people human
468+💏 kiss pair valentines love like dating marriage
469+👩‍❤️‍💋‍👨 kiss woman man love
470+👨‍❤️‍💋‍👨 kiss man man pair valentines love like dating marriage
471+👩‍❤️‍💋‍👩 kiss woman woman pair valentines love like dating marriage
472+💑 couple with heart pair love like affection human dating valentines marriage
473+👩‍❤️‍👨 couple with heart woman man love
474+👨‍❤️‍👨 couple with heart man man pair love like affection human dating valentines marriage
475+👩‍❤️‍👩 couple with heart woman woman pair love like affection human dating valentines marriage
476+👪 family home parents child mom dad father mother people human
477+👨‍👩‍👦 family man woman boy love
478+👨‍👩‍👧 family man woman girl home parents people human child
479+👨‍👩‍👧‍👦 family man woman girl boy home parents people human children
480+👨‍👩‍👦‍👦 family man woman boy boy home parents people human children
481+👨‍👩‍👧‍👧 family man woman girl girl home parents people human children
482+👨‍👨‍👦 family man man boy home parents people human children
483+👨‍👨‍👧 family man man girl home parents people human children
484+👨‍👨‍👧‍👦 family man man girl boy home parents people human children
485+👨‍👨‍👦‍👦 family man man boy boy home parents people human children
486+👨‍👨‍👧‍👧 family man man girl girl home parents people human children
487+👩‍👩‍👦 family woman woman boy home parents people human children
488+👩‍👩‍👧 family woman woman girl home parents people human children
489+👩‍👩‍👧‍👦 family woman woman girl boy home parents people human children
490+👩‍👩‍👦‍👦 family woman woman boy boy home parents people human children
491+👩‍👩‍👧‍👧 family woman woman girl girl home parents people human children
492+👨‍👦 family man boy home parent people human child
493+👨‍👦‍👦 family man boy boy home parent people human children
494+👨‍👧 family man girl home parent people human child
495+👨‍👧‍👦 family man girl boy home parent people human children
496+👨‍👧‍👧 family man girl girl home parent people human children
497+👩‍👦 family woman boy home parent people human child
498+👩‍👦‍👦 family woman boy boy home parent people human children
499+👩‍👧 family woman girl home parent people human child
500+👩‍👧‍👦 family woman girl boy home parent people human children
501+👩‍👧‍👧 family woman girl girl home parent people human children
502+🗣️ speaking head user person human sing say talk
503+👤 bust in silhouette user person human
504+👥 busts in silhouette user person human group team
505+👣 footprints feet tracking walking beach
506+🐵 monkey face animal nature circus
507+🐒 monkey animal nature banana circus
508+🦍 gorilla animal nature circus
509+🦧 orangutan animal
510+🐶 dog face animal friend nature woof puppy pet faithful
511+🐕 dog animal nature friend doge pet faithful
512+🦮 guide dog animal blind
513+🐕‍🦺 service dog blind animal
514+🐩 poodle dog animal 101 nature pet
515+🐺 wolf animal nature wild
516+🦊 fox animal nature face
517+🦝 raccoon animal nature
518+🐱 cat face animal meow nature pet kitten
519+🐈 cat animal meow pet cats
520+🦁 lion animal nature
521+🐯 tiger face animal cat danger wild nature roar
522+🐅 tiger animal nature roar
523+🐆 leopard animal nature
524+🐴 horse face animal brown nature
525+🐎 horse animal gamble luck
526+🦄 unicorn animal nature mystical
527+🦓 zebra animal nature stripes safari
528+🦌 deer animal nature horns venison
529+🐮 cow face beef ox animal nature moo milk
530+🐂 ox animal cow beef
531+🐃 water buffalo animal nature ox cow
532+🐄 cow beef ox animal nature moo milk
533+🐷 pig face animal oink nature
534+🐖 pig animal nature
535+🐗 boar animal nature
536+🐽 pig nose animal oink
537+🐏 ram animal sheep nature
538+🐑 ewe animal nature wool shipit
539+🐐 goat animal nature
540+🐪 camel animal hot desert hump
541+🐫 two hump camel animal nature hot desert hump
542+🦙 llama animal nature alpaca
543+🦒 giraffe animal nature spots safari
544+🐘 elephant animal nature nose th circus
545+🦏 rhinoceros animal nature horn
546+🦛 hippopotamus animal nature
547+🐭 mouse face animal nature cheese wedge rodent
548+🐁 mouse animal nature rodent
549+🐀 rat animal mouse rodent
550+🐹 hamster animal nature
551+🐰 rabbit face animal nature pet spring magic bunny
552+🐇 rabbit animal nature pet magic spring
553+🐿️ chipmunk animal nature rodent squirrel
554+🦔 hedgehog animal nature spiny
555+🦇 bat animal nature blind vampire
556+🐻 bear animal nature wild
557+🐨 koala animal nature
558+🐼 panda animal nature panda
559+🦥 sloth animal
560+🦦 otter animal
561+🦨 skunk animal
562+🦘 kangaroo animal nature australia joey hop marsupial
563+🦡 badger animal nature honey
564+🐾 paw prints animal tracking footprints dog cat pet feet
565+🦃 turkey animal bird
566+🐔 chicken animal cluck nature bird
567+🐓 rooster animal nature chicken
568+🐣 hatching chick animal chicken egg born baby bird
569+🐤 baby chick animal chicken bird
570+🐥 front facing baby chick animal chicken baby bird
571+🐦 bird animal nature fly tweet spring
572+🐧 penguin animal nature
573+🕊️ dove animal bird
574+🦅 eagle animal nature bird
575+🦆 duck animal nature bird mallard
576+🦢 swan animal nature bird
577+🦉 owl animal nature bird hoot
578+🦩 flamingo animal
579+🦚 peacock animal nature peahen bird
580+🦜 parrot animal nature bird pirate talk
581+🐸 frog animal nature croak toad
582+🐊 crocodile animal nature reptile lizard alligator
583+🐢 turtle animal slow nature tortoise
584+🦎 lizard animal nature reptile
585+🐍 snake animal evil nature hiss python
586+🐲 dragon face animal myth nature chinese green
587+🐉 dragon animal myth nature chinese green
588+🦕 sauropod animal nature dinosaur brachiosaurus brontosaurus diplodocus extinct
589+🦖 t rex animal nature dinosaur tyrannosaurus extinct
590+🐳 spouting whale animal nature sea ocean
591+🐋 whale animal nature sea ocean
592+🐬 dolphin animal nature fish sea ocean flipper fins beach
593+🐟 fish animal food nature
594+🐠 tropical fish animal swim ocean beach nemo
595+🐡 blowfish animal nature food sea ocean
596+🦈 shark animal nature fish sea ocean jaws fins beach
597+🐙 octopus animal creature ocean sea nature beach
598+🐚 spiral shell nature sea beach
599+🐌 snail slow animal shell
600+🦋 butterfly animal insect nature caterpillar
601+🐛 bug animal insect nature worm
602+🐜 ant animal insect nature bug
603+🐝 honeybee animal insect nature bug spring honey
604+🐞 lady beetle animal insect nature ladybug
605+🦗 cricket animal cricket chirp
606+🕷️ spider animal arachnid
607+🕸️ spider web animal insect arachnid silk
608+🦂 scorpion animal arachnid
609+🦟 mosquito animal nature insect malaria
610+🦠 microbe amoeba bacteria germs virus
611+💐 bouquet flowers nature spring
612+🌸 cherry blossom nature plant spring flower
613+💮 white flower japanese spring
614+🏵️ rosette flower decoration military
615+🌹 rose flowers valentines love spring
616+🥀 wilted flower plant nature flower
617+🌺 hibiscus plant vegetable flowers beach
618+🌻 sunflower nature plant fall
619+🌼 blossom nature flowers yellow
620+🌷 tulip flowers plant nature summer spring
621+🌱 seedling plant nature grass lawn spring
622+🌲 evergreen tree plant nature
623+🌳 deciduous tree plant nature
624+🌴 palm tree plant vegetable nature summer beach mojito tropical
625+🌵 cactus vegetable plant nature
626+🌾 sheaf of rice nature plant
627+🌿 herb vegetable plant medicine weed grass lawn
628+☘️ shamrock vegetable plant nature irish clover
629+🍀 four leaf clover vegetable plant nature lucky irish
630+🍁 maple leaf nature plant vegetable ca fall
631+🍂 fallen leaf nature plant vegetable leaves
632+🍃 leaf fluttering in wind nature plant tree vegetable grass lawn spring
633+🍇 grapes fruit food wine
634+🍈 melon fruit nature food
635+🍉 watermelon fruit food picnic summer
636+🍊 tangerine food fruit nature orange
637+🍋 lemon fruit nature
638+🍌 banana fruit food monkey
639+🍍 pineapple fruit nature food
640+🥭 mango fruit food tropical
641+🍎 red apple fruit mac school
642+🍏 green apple fruit nature
643+🍐 pear fruit nature food
644+🍑 peach fruit nature food
645+🍒 cherries food fruit
646+🍓 strawberry fruit food nature
647+🥝 kiwi fruit fruit food
648+🍅 tomato fruit vegetable nature food
649+🥥 coconut fruit nature food palm
650+🥑 avocado fruit food
651+🍆 eggplant vegetable nature food aubergine
652+🥔 potato food tuber vegatable starch
653+🥕 carrot vegetable food orange
654+🌽 ear of corn food vegetable plant
655+🌶️ hot pepper food spicy chilli chili
656+🥒 cucumber fruit food pickle
657+🥬 leafy green food vegetable plant bok choy cabbage kale lettuce
658+🥦 broccoli fruit food vegetable
659+🧄 garlic food spice cook
660+🧅 onion cook food spice
661+🍄 mushroom plant vegetable
662+🥜 peanuts food nut
663+🌰 chestnut food squirrel
664+🍞 bread food wheat breakfast toast
665+🥐 croissant food bread french
666+🥖 baguette bread food bread french
667+🥨 pretzel food bread twisted
668+🥯 bagel food bread bakery schmear
669+🥞 pancakes food breakfast flapjacks hotcakes
670+🧇 waffle food breakfast
671+🧀 cheese wedge food chadder
672+🍖 meat on bone good food drumstick
673+🍗 poultry leg food meat drumstick bird chicken turkey
674+🥩 cut of meat food cow meat cut chop lambchop porkchop
675+🥓 bacon food breakfast pork pig meat
676+🍔 hamburger meat fast food beef cheeseburger mcdonalds burger king
677+🍟 french fries chips snack fast food
678+🍕 pizza food party
679+🌭 hot dog food frankfurter
680+🥪 sandwich food lunch bread
681+🌮 taco food mexican
682+🌯 burrito food mexican
683+🥙 stuffed flatbread food flatbread stuffed gyro
684+🧆 falafel food
685+🥚 egg food chicken breakfast
686+🍳 cooking food breakfast kitchen egg
687+🥘 shallow pan of food food cooking casserole paella
688+🍲 pot of food food meat soup
689+🥣 bowl with spoon food breakfast cereal oatmeal porridge
690+🥗 green salad food healthy lettuce
691+🍿 popcorn food movie theater films snack
692+🧈 butter food cook
693+🧂 salt condiment shaker
694+🥫 canned food food soup
695+🍱 bento box food japanese box
696+🍘 rice cracker food japanese
697+🍙 rice ball food japanese
698+🍚 cooked rice food china asian
699+🍛 curry rice food spicy hot indian
700+🍜 steaming bowl food japanese noodle chopsticks
701+🍝 spaghetti food italian noodle
702+🍠 roasted sweet potato food nature
703+🍢 oden food japanese
704+🍣 sushi food fish japanese rice
705+🍤 fried shrimp food animal appetizer summer
706+🍥 fish cake with swirl food japan sea beach narutomaki pink swirl kamaboko surimi ramen
707+🥮 moon cake food autumn
708+🍡 dango food dessert sweet japanese barbecue meat
709+🥟 dumpling food empanada pierogi potsticker
710+🥠 fortune cookie food prophecy
711+🥡 takeout box food leftovers
712+🦀 crab animal crustacean
713+🦞 lobster animal nature bisque claws seafood
714+🦐 shrimp animal ocean nature seafood
715+🦑 squid animal nature ocean sea
716+🦪 oyster food
717+🍦 soft ice cream food hot dessert summer
718+🍧 shaved ice hot dessert summer
719+🍨 ice cream food hot dessert
720+🍩 doughnut food dessert snack sweet donut
721+🍪 cookie food snack oreo chocolate sweet dessert
722+🎂 birthday cake food dessert cake
723+🍰 shortcake food dessert
724+🧁 cupcake food dessert bakery sweet
725+🥧 pie food dessert pastry
726+🍫 chocolate bar food snack dessert sweet
727+🍬 candy snack dessert sweet lolly
728+🍭 lollipop food snack candy sweet
729+🍮 custard dessert food
730+🍯 honey pot bees sweet kitchen
731+🍼 baby bottle food container milk
732+🥛 glass of milk beverage drink cow
733+☕ hot beverage beverage caffeine latte espresso coffee
734+🍵 teacup without handle drink bowl breakfast green british
735+🍶 sake wine drink drunk beverage japanese alcohol booze
736+🍾 bottle with popping cork drink wine bottle celebration
737+🍷 wine glass drink beverage drunk alcohol booze
738+🍸 cocktail glass drink drunk alcohol beverage booze mojito
739+🍹 tropical drink beverage cocktail summer beach alcohol booze mojito
740+🍺 beer mug relax beverage drink drunk party pub summer alcohol booze
741+🍻 clinking beer mugs relax beverage drink drunk party pub summer alcohol booze
742+🥂 clinking glasses beverage drink party alcohol celebrate cheers wine champagne toast
743+🥃 tumbler glass drink beverage drunk alcohol liquor booze bourbon scotch whisky glass shot
744+🥤 cup with straw drink soda
745+🧃 beverage box drink
746+🧉 mate drink tea beverage
747+🧊 ice water cold
748+🥢 chopsticks food
749+🍽️ fork and knife with plate food eat meal lunch dinner restaurant
750+🍴 fork and knife cutlery kitchen
751+🥄 spoon cutlery kitchen tableware
752+🔪 kitchen knife knife blade cutlery kitchen weapon
753+🏺 amphora vase jar
754+🌍 globe showing europe africa globe world international
755+🌎 globe showing americas globe world USA international
756+🌏 globe showing asia australia globe world east international
757+🌐 globe with meridians earth international world internet interweb i18n
758+🗺️ world map location direction
759+🗾 map of japan nation country japanese asia
760+🧭 compass magnetic navigation orienteering
761+🏔️ snow capped mountain photo nature environment winter cold
762+⛰️ mountain photo nature environment
763+🌋 volcano photo nature disaster
764+🗻 mount fuji photo mountain nature japanese
765+🏕️ camping photo outdoors tent
766+🏖️ beach with umbrella weather summer sunny sand mojito
767+🏜️ desert photo warm saharah
768+🏝️ desert island photo tropical mojito
769+🏞️ national park photo environment nature
770+🏟️ stadium photo place sports concert venue
771+🏛️ classical building art culture history
772+🏗️ building construction wip working progress
773+🧱 brick bricks
774+🏘️ houses buildings photo
775+🏚️ derelict house abandon evict broken building
776+🏠 house building home
777+🏡 house with garden home plant nature
778+🏢 office building building bureau work
779+🏣 japanese post office building envelope communication
780+🏤 post office building email
781+🏥 hospital building health surgery doctor
782+🏦 bank building money sales cash business enterprise
783+🏨 hotel building accomodation checkin
784+🏩 love hotel like affection dating
785+🏪 convenience store building shopping groceries
786+🏫 school building student education learn teach
787+🏬 department store building shopping mall
788+🏭 factory building industry pollution smoke
789+🏯 japanese castle photo building
790+🏰 castle building royalty history
791+💒 wedding love like affection couple marriage bride groom
792+🗼 tokyo tower photo japanese
793+🗽 statue of liberty american newyork
794+⛪ church building religion christ
795+🕌 mosque islam worship minaret
796+🛕 hindu temple religion
797+🕍 synagogue judaism worship temple jewish
798+⛩️ shinto shrine temple japan kyoto
799+🕋 kaaba mecca mosque islam
800+⛲ fountain photo summer water fresh
801+⛺ tent photo camping outdoors
802+🌁 foggy photo mountain
803+🌃 night with stars evening city downtown
804+🏙️ cityscape photo night life urban
805+🌄 sunrise over mountains view vacation photo
806+🌅 sunrise morning view vacation photo
807+🌆 cityscape at dusk photo evening sky buildings
808+🌇 sunset photo good morning dawn
809+🌉 bridge at night photo sanfrancisco
810+♨️ hot springs bath warm relax
811+🎠 carousel horse photo carnival
812+🎡 ferris wheel photo carnival londoneye
813+🎢 roller coaster carnival playground photo fun
814+💈 barber pole hair salon style
815+🎪 circus tent festival carnival party
816+🚂 locomotive transportation vehicle train
817+🚃 railway car transportation vehicle
818+🚄 high speed train transportation vehicle
819+🚅 bullet train transportation vehicle speed fast public travel
820+🚆 train transportation vehicle
821+🚇 metro transportation blue-square mrt underground tube
822+🚈 light rail transportation vehicle
823+🚉 station transportation vehicle public
824+🚊 tram transportation vehicle
825+🚝 monorail transportation vehicle
826+🚞 mountain railway transportation vehicle
827+🚋 tram car transportation vehicle carriage public travel
828+🚌 bus car vehicle transportation
829+🚍 oncoming bus vehicle transportation
830+🚎 trolleybus bart transportation vehicle
831+🚐 minibus vehicle car transportation
832+🚑 ambulance health 911 hospital
833+🚒 fire engine transportation cars vehicle
834+🚓 police car vehicle cars transportation law legal enforcement
835+🚔 oncoming police car vehicle law legal enforcement 911
836+🚕 taxi uber vehicle cars transportation
837+🚖 oncoming taxi vehicle cars uber
838+🚗 automobile red transportation vehicle
839+🚘 oncoming automobile car vehicle transportation
840+🚙 sport utility vehicle transportation vehicle
841+🚚 delivery truck cars transportation
842+🚛 articulated lorry vehicle cars transportation express
843+🚜 tractor vehicle car farming agriculture
844+🏎️ racing car sports race fast formula f1
845+🏍️ motorcycle race sports fast
846+🛵 motor scooter vehicle vespa sasha
847+🦽 manual wheelchair accessibility
848+🦼 motorized wheelchair accessibility
849+🛺 auto rickshaw move transportation
850+🚲 bicycle sports bicycle exercise hipster
851+🛴 kick scooter vehicle kick razor
852+🛹 skateboard board
853+🚏 bus stop transportation wait
854+🛣️ motorway road cupertino interstate highway
855+🛤️ railway track train transportation
856+🛢️ oil drum barrell
857+⛽ fuel pump gas station petroleum
858+🚨 police car light police ambulance 911 emergency alert error pinged law legal
859+🚥 horizontal traffic light transportation signal
860+🚦 vertical traffic light transportation driving
861+🛑 stop sign stop
862+🚧 construction wip progress caution warning
863+⚓ anchor ship ferry sea boat
864+⛵ sailboat ship summer transportation water sailing
865+🛶 canoe boat paddle water ship
866+🚤 speedboat ship transportation vehicle summer
867+🛳️ passenger ship yacht cruise ferry
868+⛴️ ferry boat ship yacht
869+🛥️ motor boat ship
870+🚢 ship transportation titanic deploy
871+✈️ airplane vehicle transportation flight fly
872+🛩️ small airplane flight transportation fly vehicle
873+🛫 airplane departure airport flight landing
874+🛬 airplane arrival airport flight boarding
875+🪂 parachute fly glide
876+💺 seat sit airplane transport bus flight fly
877+🚁 helicopter transportation vehicle fly
878+🚟 suspension railway vehicle transportation
879+🚠 mountain cableway transportation vehicle ski
880+🚡 aerial tramway transportation vehicle ski
881+🛰️ satellite communication gps orbit spaceflight NASA ISS
882+🚀 rocket launch ship staffmode NASA outer space outer space fly
883+🛸 flying saucer transportation vehicle ufo
884+🛎️ bellhop bell service
885+🧳 luggage packing travel
886+⌛ hourglass done time clock oldschool limit exam quiz test
887+⏳ hourglass not done oldschool time countdown
888+⌚ watch time accessories
889+⏰ alarm clock time wake
890+⏱️ stopwatch time deadline
891+⏲️ timer clock alarm
892+🕰️ mantelpiece clock time
893+🕛 twelve o clock time noon midnight midday late early schedule
894+🕧 twelve thirty time late early schedule
895+🕐 one o clock time late early schedule
896+🕜 one thirty time late early schedule
897+🕑 two o clock time late early schedule
898+🕝 two thirty time late early schedule
899+🕒 three o clock time late early schedule
900+🕞 three thirty time late early schedule
901+🕓 four o clock time late early schedule
902+🕟 four thirty time late early schedule
903+🕔 five o clock time late early schedule
904+🕠 five thirty time late early schedule
905+🕕 six o clock time late early schedule dawn dusk
906+🕡 six thirty time late early schedule
907+🕖 seven o clock time late early schedule
908+🕢 seven thirty time late early schedule
909+🕗 eight o clock time late early schedule
910+🕣 eight thirty time late early schedule
911+🕘 nine o clock time late early schedule
912+🕤 nine thirty time late early schedule
913+🕙 ten o clock time late early schedule
914+🕥 ten thirty time late early schedule
915+🕚 eleven o clock time late early schedule
916+🕦 eleven thirty time late early schedule
917+🌑 new moon nature twilight planet space night evening sleep
918+🌒 waxing crescent moon nature twilight planet space night evening sleep
919+🌓 first quarter moon nature twilight planet space night evening sleep
920+🌔 waxing gibbous moon nature night sky gray twilight planet space evening sleep
921+🌕 full moon nature yellow twilight planet space night evening sleep
922+🌖 waning gibbous moon nature twilight planet space night evening sleep waxing gibbous moon
923+🌗 last quarter moon nature twilight planet space night evening sleep
924+🌘 waning crescent moon nature twilight planet space night evening sleep
925+🌙 crescent moon night sleep sky evening magic
926+🌚 new moon face nature twilight planet space night evening sleep
927+🌛 first quarter moon face nature twilight planet space night evening sleep
928+🌜 last quarter moon face nature twilight planet space night evening sleep
929+🌡️ thermometer weather temperature hot cold
930+☀️ sun weather nature brightness summer beach spring
931+🌝 full moon face nature twilight planet space night evening sleep
932+🌞 sun with face nature morning sky
933+🪐 ringed planet outerspace
934+⭐ star night yellow
935+🌟 glowing star night sparkle awesome good magic
936+🌠 shooting star night photo
937+🌌 milky way photo space stars
938+☁️ cloud weather sky
939+⛅ sun behind cloud weather nature cloudy morning fall spring
940+⛈️ cloud with lightning and rain weather lightning
941+🌤️ sun behind small cloud weather
942+🌥️ sun behind large cloud weather
943+🌦️ sun behind rain cloud weather
944+🌧️ cloud with rain weather
945+🌨️ cloud with snow weather
946+🌩️ cloud with lightning weather thunder
947+🌪️ tornado weather cyclone twister
948+🌫️ fog weather
949+🌬️ wind face gust air
950+🌀 cyclone weather swirl blue cloud vortex spiral whirlpool spin tornado hurricane typhoon
951+🌈 rainbow nature happy unicorn face photo sky spring
952+🌂 closed umbrella weather rain drizzle
953+☂️ umbrella weather spring
954+☔ umbrella with rain drops rainy weather spring
955+⛱️ umbrella on ground weather summer
956+⚡ high voltage thunder weather lightning bolt fast
957+❄️ snowflake winter season cold weather christmas xmas
958+☃️ snowman winter season cold weather christmas xmas frozen
959+⛄ snowman without snow winter season cold weather christmas xmas frozen without snow
960+☄️ comet space
961+🔥 fire hot cook flame
962+💧 droplet water drip faucet spring
963+🌊 water wave sea water wave nature tsunami disaster
964+🎃 jack o lantern halloween light pumpkin creepy fall
965+🎄 christmas tree festival vacation december xmas celebration
966+🎆 fireworks photo festival carnival congratulations
967+🎇 sparkler stars night shine
968+🧨 firecracker dynamite boom explode explosion explosive
969+✨ sparkles stars shine shiny cool awesome good magic
970+🎈 balloon party celebration birthday circus
971+🎉 party popper party congratulations birthday magic circus celebration tada
972+🎊 confetti ball festival party birthday circus
973+🎋 tanabata tree plant nature branch summer
974+🎍 pine decoration plant nature vegetable panda pine decoration
975+🎎 japanese dolls japanese toy kimono
976+🎏 carp streamer fish japanese koinobori carp banner
977+🎐 wind chime nature ding spring bell
978+🎑 moon viewing ceremony photo japan asia tsukimi
979+🧧 red envelope gift
980+🎀 ribbon decoration pink girl bowtie
981+🎁 wrapped gift present birthday christmas xmas
982+🎗️ reminder ribbon sports cause support awareness
983+🎟️ admission tickets sports concert entrance
984+🎫 ticket event concert pass
985+🎖️ military medal award winning army
986+🏆 trophy win award contest place ftw ceremony
987+🏅 sports medal award winning
988+🥇 1st place medal award winning first
989+🥈 2nd place medal award second
990+🥉 3rd place medal award third
991+⚽ soccer ball sports football
992+⚾ baseball sports balls
993+🥎 softball sports balls
994+🏀 basketball sports balls NBA
995+🏐 volleyball sports balls
996+🏈 american football sports balls NFL
997+🏉 rugby football sports team
998+🎾 tennis sports balls green
999+🥏 flying disc sports frisbee ultimate
1000+🎳 bowling sports fun play
1001+🏏 cricket game sports
1002+🏑 field hockey sports
1003+🏒 ice hockey sports
1004+🥍 lacrosse sports ball stick
1005+🏓 ping pong sports pingpong
1006+🏸 badminton sports
1007+🥊 boxing glove sports fighting
1008+🥋 martial arts uniform judo karate taekwondo
1009+🥅 goal net sports
1010+⛳ flag in hole sports business flag hole summer
1011+⛸️ ice skate sports
1012+🎣 fishing pole food hobby summer
1013+🤿 diving mask sport ocean
1014+🎽 running shirt play pageant
1015+🎿 skis sports winter cold snow
1016+🛷 sled sleigh luge toboggan
1017+🥌 curling stone sports
1018+🎯 direct hit game play bar target bullseye
1019+🪀 yo yo toy
1020+🪁 kite wind fly
1021+🎱 pool 8 ball pool hobby game luck magic
1022+🔮 crystal ball disco party magic circus fortune teller
1023+🧿 nazar amulet bead charm
1024+🎮 video game play console PS4 controller
1025+🕹️ joystick game play
1026+🎰 slot machine bet gamble vegas fruit machine luck casino
1027+🎲 game die dice random tabletop play luck
1028+🧩 puzzle piece interlocking puzzle piece
1029+🧸 teddy bear plush stuffed
1030+♠️ spade suit poker cards suits magic
1031+♥️ heart suit poker cards magic suits
1032+♦️ diamond suit poker cards magic suits
1033+♣️ club suit poker cards magic suits
1034+♟️ chess pawn expendable
1035+🃏 joker poker cards game play magic
1036+🀄 mahjong red dragon game play chinese kanji
1037+🎴 flower playing cards game sunset red
1038+🎭 performing arts acting theater drama
1039+🖼️ framed picture photography
1040+🎨 artist palette design paint draw colors
1041+🧵 thread needle sewing spool string
1042+🧶 yarn ball crochet knit
1043+👓 glasses fashion accessories eyesight nerdy dork geek
1044+🕶️ sunglasses face cool accessories
1045+🥽 goggles eyes protection safety
1046+🥼 lab coat doctor experiment scientist chemist
1047+🦺 safety vest protection
1048+👔 necktie shirt suitup formal fashion cloth business
1049+👕 t shirt fashion cloth casual shirt tee
1050+👖 jeans fashion shopping
1051+🧣 scarf neck winter clothes
1052+🧤 gloves hands winter clothes
1053+🧥 coat jacket
1054+🧦 socks stockings clothes
1055+👗 dress clothes fashion shopping
1056+👘 kimono dress fashion women female japanese
1057+🥻 sari dress
1058+🩱 one piece swimsuit fashion
1059+🩲 briefs clothing
1060+🩳 shorts clothing
1061+👙 bikini swimming female woman girl fashion beach summer
1062+👚 woman s clothes fashion shopping bags female
1063+👛 purse fashion accessories money sales shopping
1064+👜 handbag fashion accessory accessories shopping
1065+👝 clutch bag bag accessories shopping
1066+🛍️ shopping bags mall buy purchase
1067+🎒 backpack student education bag backpack
1068+👞 man s shoe fashion male
1069+👟 running shoe shoes sports sneakers
1070+🥾 hiking boot backpacking camping hiking
1071+🥿 flat shoe ballet slip-on slipper
1072+👠 high heeled shoe fashion shoes female pumps stiletto
1073+👡 woman s sandal shoes fashion flip flops
1074+🩰 ballet shoes dance
1075+👢 woman s boot shoes fashion
1076+👑 crown king kod leader royalty lord
1077+👒 woman s hat fashion accessories female lady spring
1078+🎩 top hat magic gentleman classy circus
1079+🎓 graduation cap school college degree university graduation cap hat legal learn education
1080+🧢 billed cap cap baseball
1081+⛑️ rescue worker s helmet construction build
1082+📿 prayer beads dhikr religious
1083+💄 lipstick female girl fashion woman
1084+💍 ring wedding propose marriage valentines diamond fashion jewelry gem engagement
1085+💎 gem stone blue ruby diamond jewelry
1086+🔇 muted speaker sound volume silence quiet
1087+🔈 speaker low volume sound volume silence broadcast
1088+🔉 speaker medium volume volume speaker broadcast
1089+🔊 speaker high volume volume noise noisy speaker broadcast
1090+📢 loudspeaker volume sound
1091+📣 megaphone sound speaker volume
1092+📯 postal horn instrument music
1093+🔔 bell sound notification christmas xmas chime
1094+🔕 bell with slash sound volume mute quiet silent
1095+🎼 musical score treble clef compose
1096+🎵 musical note score tone sound
1097+🎶 musical notes music score
1098+🎙️ studio microphone sing recording artist talkshow
1099+🎚️ level slider scale
1100+🎛️ control knobs dial
1101+🎤 microphone sound music PA sing talkshow
1102+🎧 headphone music score gadgets
1103+📻 radio communication music podcast program
1104+🎷 saxophone music instrument jazz blues
1105+🎸 guitar music instrument
1106+🎹 musical keyboard piano instrument compose
1107+🎺 trumpet music brass
1108+🎻 violin music instrument orchestra symphony
1109+🪕 banjo music instructment
1110+🥁 drum music instrument drumsticks snare
1111+📱 mobile phone technology apple gadgets dial
1112+📲 mobile phone with arrow iphone incoming
1113+☎️ telephone technology communication dial telephone
1114+📞 telephone receiver technology communication dial
1115+📟 pager bbcall oldschool 90s
1116+📠 fax machine communication technology
1117+🔋 battery power energy sustain
1118+🔌 electric plug charger power
1119+💻 laptop technology laptop screen display monitor
1120+🖥️ desktop computer technology computing screen
1121+🖨️ printer paper ink
1122+⌨️ keyboard technology computer type input text
1123+🖱️ computer mouse click
1124+🖲️ trackball technology trackpad
1125+💽 computer disk technology record data disk 90s
1126+💾 floppy disk oldschool technology save 90s 80s
1127+💿 optical disk technology dvd disk disc 90s
1128+📀 dvd cd disk disc
1129+🧮 abacus calculation
1130+🎥 movie camera film record
1131+🎞️ film frames movie
1132+📽️ film projector video tape record movie
1133+🎬 clapper board movie film record
1134+📺 television technology program oldschool show television
1135+📷 camera gadgets photography
1136+📸 camera with flash photography gadgets
1137+📹 video camera film record
1138+📼 videocassette record video oldschool 90s 80s
1139+🔍 magnifying glass tilted left search zoom find detective
1140+🔎 magnifying glass tilted right search zoom find detective
1141+🕯️ candle fire wax
1142+💡 light bulb light electricity idea
1143+🔦 flashlight dark camping sight night
1144+🏮 red paper lantern light paper halloween spooky
1145+🪔 diya lamp lighting
1146+📔 notebook with decorative cover classroom notes record paper study
1147+📕 closed book read library knowledge textbook learn
1148+📖 open book book read library knowledge literature learn study
1149+📗 green book read library knowledge study
1150+📘 blue book read library knowledge learn study
1151+📙 orange book read library knowledge textbook study
1152+📚 books literature library study
1153+📓 notebook stationery record notes paper study
1154+📒 ledger notes paper
1155+📃 page with curl documents office paper
1156+📜 scroll documents ancient history paper
1157+📄 page facing up documents office paper information
1158+📰 newspaper press headline
1159+🗞️ rolled up newspaper press headline
1160+📑 bookmark tabs favorite save order tidy
1161+🔖 bookmark favorite label save
1162+🏷️ label sale tag
1163+💰 money bag dollar payment coins sale
1164+💴 yen banknote money sales japanese dollar currency
1165+💵 dollar banknote money sales bill currency
1166+💶 euro banknote money sales dollar currency
1167+💷 pound banknote british sterling money sales bills uk england currency
1168+💸 money with wings dollar bills payment sale
1169+💳 credit card money sales dollar bill payment shopping
1170+🧾 receipt accounting expenses
1171+💹 chart increasing with yen green-square graph presentation stats
1172+💱 currency exchange money sales dollar travel
1173+💲 heavy dollar sign money sales payment currency buck
1174+✉️ envelope letter postal inbox communication
1175+📧 e mail communication inbox
1176+📨 incoming envelope email inbox
1177+📩 envelope with arrow email communication
1178+📤 outbox tray inbox email
1179+📥 inbox tray email documents
1180+📦 package mail gift cardboard box moving
1181+📫 closed mailbox with raised flag email inbox communication
1182+📪 closed mailbox with lowered flag email communication inbox
1183+📬 open mailbox with raised flag email inbox communication
1184+📭 open mailbox with lowered flag email inbox
1185+📮 postbox email letter envelope
1186+🗳️ ballot box with ballot election vote
1187+✏️ pencil stationery write paper writing school study
1188+✒️ black nib pen stationery writing write
1189+🖋️ fountain pen stationery writing write
1190+🖊️ pen stationery writing write
1191+🖌️ paintbrush drawing creativity art
1192+🖍️ crayon drawing creativity
1193+📝 memo write documents stationery pencil paper writing legal exam quiz test study compose
1194+💼 briefcase business documents work law legal job career
1195+📁 file directory documents business office
1196+📂 open file directory documents load
1197+🗂️ card index dividers organizing business stationery
1198+📅 calendar calendar schedule
1199+📆 tear off calendar schedule date planning
1200+🗒️ spiral notepad memo stationery
1201+🗓️ spiral calendar date schedule planning
1202+📇 card index business stationery
1203+📈 chart increasing graph presentation stats recovery business economics money sales good success
1204+📉 chart decreasing graph presentation stats recession business economics money sales bad failure
1205+📊 bar chart graph presentation stats
1206+📋 clipboard stationery documents
1207+📌 pushpin stationery mark here
1208+📍 round pushpin stationery location map here
1209+📎 paperclip documents stationery
1210+🖇️ linked paperclips documents stationery
1211+📏 straight ruler stationery calculate length math school drawing architect sketch
1212+📐 triangular ruler stationery math architect sketch
1213+✂️ scissors stationery cut
1214+🗃️ card file box business stationery
1215+🗄️ file cabinet filing organizing
1216+🗑️ wastebasket bin trash rubbish garbage toss
1217+🔒 locked security password padlock
1218+🔓 unlocked privacy security
1219+🔏 locked with pen security secret
1220+🔐 locked with key security privacy
1221+🔑 key lock door password
1222+🗝️ old key lock door password
1223+🔨 hammer tools build create
1224+🪓 axe tool chop cut
1225+⛏️ pick tools dig
1226+⚒️ hammer and pick tools build create
1227+🛠️ hammer and wrench tools build create
1228+🗡️ dagger weapon
1229+⚔️ crossed swords weapon
1230+🔫 pistol violence weapon pistol revolver
1231+🏹 bow and arrow sports
1232+🛡️ shield protection security
1233+🔧 wrench tools diy ikea fix maintainer
1234+🔩 nut and bolt handy tools fix
1235+⚙️ gear cog
1236+🗜️ clamp tool
1237+⚖️ balance scale law fairness weight
1238+🦯 probing cane accessibility
1239+🔗 link rings url
1240+⛓️ chains lock arrest
1241+🧰 toolbox tools diy fix maintainer mechanic
1242+🧲 magnet attraction magnetic
1243+⚗️ alembic distilling science experiment chemistry
1244+🧪 test tube chemistry experiment lab science
1245+🧫 petri dish bacteria biology culture lab
1246+🧬 dna biologist genetics life
1247+🔬 microscope laboratory experiment zoomin science study
1248+🔭 telescope stars space zoom science astronomy
1249+📡 satellite antenna communication future radio space
1250+💉 syringe health hospital drugs blood medicine needle doctor nurse
1251+🩸 drop of blood period hurt harm wound
1252+💊 pill health medicine doctor pharmacy drug
1253+🩹 adhesive bandage heal
1254+🩺 stethoscope health
1255+🚪 door house entry exit
1256+🛏️ bed sleep rest
1257+🛋️ couch and lamp read chill
1258+🪑 chair sit furniture
1259+🚽 toilet restroom wc washroom bathroom potty
1260+🚿 shower clean water bathroom
1261+🛁 bathtub clean shower bathroom
1262+🪒 razor cut
1263+🧴 lotion bottle moisturizer sunscreen
1264+🧷 safety pin diaper
1265+🧹 broom cleaning sweeping witch
1266+🧺 basket laundry
1267+🧻 roll of paper roll
1268+🧼 soap bar bathing cleaning lather
1269+🧽 sponge absorbing cleaning porous
1270+🧯 fire extinguisher quench
1271+🛒 shopping cart trolley
1272+🚬 cigarette kills tobacco cigarette joint smoke
1273+⚰️ coffin vampire dead die death rip graveyard cemetery casket funeral box
1274+⚱️ funeral urn dead die death rip ashes
1275+🗿 moai rock easter island moai
1276+🏧 atm sign money sales cash blue-square payment bank
1277+🚮 litter in bin sign blue-square sign human info
1278+🚰 potable water blue-square liquid restroom cleaning faucet
1279+♿ wheelchair symbol blue-square disabled accessibility
1280+🚹 men s room toilet restroom wc blue-square gender male
1281+🚺 women s room purple-square woman female toilet loo restroom gender
1282+🚻 restroom blue-square toilet refresh wc gender
1283+🚼 baby symbol orange-square child
1284+🚾 water closet toilet restroom blue-square
1285+🛂 passport control custom blue-square
1286+🛃 customs passport border blue-square
1287+🛄 baggage claim blue-square airport transport
1288+🛅 left luggage blue-square travel
1289+⚠️ warning exclamation wip alert error problem issue
1290+🚸 children crossing school warning danger sign driving yellow-diamond
1291+⛔ no entry limit security privacy bad denied stop circle
1292+🚫 prohibited forbid stop limit denied disallow circle
1293+🚳 no bicycles cyclist prohibited circle
1294+🚭 no smoking cigarette blue-square smell smoke
1295+🚯 no littering trash bin garbage circle
1296+🚱 non potable water drink faucet tap circle
1297+🚷 no pedestrians rules crossing walking circle
1298+📵 no mobile phones iphone mute circle
1299+🔞 no one under eighteen 18 drink pub night minor circle
1300+☢️ radioactive nuclear danger
1301+☣️ biohazard danger
1302+⬆️ up arrow blue-square continue top direction
1303+↗️ up right arrow blue-square point direction diagonal northeast
1304+➡️ right arrow blue-square next
1305+↘️ down right arrow blue-square direction diagonal southeast
1306+⬇️ down arrow blue-square direction bottom
1307+↙️ down left arrow blue-square direction diagonal southwest
1308+⬅️ left arrow blue-square previous back
1309+↖️ up left arrow blue-square point direction diagonal northwest
1310+↕️ up down arrow blue-square direction way vertical
1311+↔️ left right arrow shape direction horizontal sideways
1312+↩️ right arrow curving left back return blue-square undo enter
1313+↪️ left arrow curving right blue-square return rotate direction
1314+⤴️ right arrow curving up blue-square direction top
1315+⤵️ right arrow curving down blue-square direction bottom
1316+🔃 clockwise vertical arrows sync cycle round repeat
1317+🔄 counterclockwise arrows button blue-square sync cycle
1318+🔙 back arrow arrow words return
1319+🔚 end arrow words arrow
1320+🔛 on arrow arrow words
1321+🔜 soon arrow arrow words
1322+🔝 top arrow words blue-square
1323+🛐 place of worship religion church temple prayer
1324+⚛️ atom symbol science physics chemistry
1325+🕉️ om hinduism buddhism sikhism jainism
1326+✡️ star of david judaism
1327+☸️ wheel of dharma hinduism buddhism sikhism jainism
1328+☯️ yin yang balance
1329+✝️ latin cross christianity
1330+☦️ orthodox cross suppedaneum religion
1331+☪️ star and crescent islam
1332+☮️ peace symbol hippie
1333+🕎 menorah hanukkah candles jewish
1334+🔯 dotted six pointed star purple-square religion jewish hexagram
1335+♈ aries sign purple-square zodiac astrology
1336+♉ taurus purple-square sign zodiac astrology
1337+♊ gemini sign zodiac purple-square astrology
1338+♋ cancer sign zodiac purple-square astrology
1339+♌ leo sign purple-square zodiac astrology
1340+♍ virgo sign zodiac purple-square astrology
1341+♎ libra sign purple-square zodiac astrology
1342+♏ scorpio sign zodiac purple-square astrology scorpio
1343+♐ sagittarius sign zodiac purple-square astrology
1344+♑ capricorn sign zodiac purple-square astrology
1345+♒ aquarius sign purple-square zodiac astrology
1346+♓ pisces purple-square sign zodiac astrology
1347+⛎ ophiuchus sign purple-square constellation astrology
1348+🔀 shuffle tracks button blue-square shuffle music random
1349+🔁 repeat button loop record
1350+🔂 repeat single button blue-square loop
1351+▶️ play button blue-square right direction play
1352+⏩ fast forward button blue-square play speed continue
1353+⏭️ next track button forward next blue-square
1354+⏯️ play or pause button blue-square play pause
1355+◀️ reverse button blue-square left direction
1356+⏪ fast reverse button play blue-square
1357+⏮️ last track button backward
1358+🔼 upwards button blue-square triangle direction point forward top
1359+⏫ fast up button blue-square direction top
1360+🔽 downwards button blue-square direction bottom
1361+⏬ fast down button blue-square direction bottom
1362+⏸️ pause button pause blue-square
1363+⏹️ stop button blue-square
1364+⏺️ record button blue-square
1365+⏏️ eject button blue-square
1366+🎦 cinema blue-square record film movie curtain stage theater
1367+🔅 dim button sun afternoon warm summer
1368+🔆 bright button sun light
1369+📶 antenna bars blue-square reception phone internet connection wifi bluetooth bars
1370+📳 vibration mode orange-square phone
1371+📴 mobile phone off mute orange-square silence quiet
1372+♀️ female sign woman women lady girl
1373+♂️ male sign man boy men
1374+⚕️ medical symbol health hospital
1375+♾️ infinity forever
1376+♻️ recycling symbol arrow environment garbage trash
1377+⚜️ fleur de lis decorative scout
1378+🔱 trident emblem weapon spear
1379+📛 name badge fire forbid
1380+🔰 japanese symbol for beginner badge shield
1381+⭕ hollow red circle circle round
1382+✅ check mark button green-square ok agree vote election answer tick
1383+☑️ check box with check ok agree confirm black-square vote election yes tick
1384+✔️ check mark ok nike answer yes tick
1385+✖️ multiplication sign math calculation
1386+❌ cross mark no delete remove cancel red
1387+❎ cross mark button x green-square no deny
1388+➕ plus sign math calculation addition more increase
1389+➖ minus sign math calculation subtract less
1390+➗ division sign divide math calculation
1391+➰ curly loop scribble draw shape squiggle
1392+➿ double curly loop tape cassette
1393+〽️ part alternation mark graph presentation stats business economics bad
1394+✳️ eight spoked asterisk star sparkle green-square
1395+✴️ eight pointed star orange-square shape polygon
1396+❇️ sparkle stars green-square awesome good fireworks
1397+‼️ double exclamation mark exclamation surprise
1398+⁉️ exclamation question mark wat punctuation surprise
1399+❓ question mark doubt confused
1400+❔ white question mark doubts gray huh confused
1401+❕ white exclamation mark surprise punctuation gray wow warning
1402+❗ exclamation mark heavy exclamation mark danger surprise punctuation wow warning
1403+〰️ wavy dash draw line moustache mustache squiggle scribble
1404+©️ copyright ip license circle law legal
1405+®️ registered alphabet circle
1406+™️ trade mark trademark brand law legal
1407+ycap symbol blue-square twitter
1408+*️⃣ keycap star keycap
1409+0️⃣ keycap 0 0 numbers blue-square null
1410+1️⃣ keycap 1 blue-square numbers 1
1411+2️⃣ keycap 2 numbers 2 prime blue-square
1412+3️⃣ keycap 3 3 numbers prime blue-square
1413+4️⃣ keycap 4 4 numbers blue-square
1414+5️⃣ keycap 5 5 numbers blue-square prime
1415+6️⃣ keycap 6 6 numbers blue-square
1416+7️⃣ keycap 7 7 numbers blue-square prime
1417+8️⃣ keycap 8 8 blue-square numbers
1418+9️⃣ keycap 9 blue-square numbers 9
1419+🔟 keycap 10 numbers 10 blue-square
1420+🔠 input latin uppercase alphabet words blue-square
1421+🔡 input latin lowercase blue-square alphabet
1422+🔢 input numbers numbers blue-square
1423+🔣 input symbols blue-square music note ampersand percent glyphs characters
1424+🔤 input latin letters blue-square alphabet
1425+🅰️ a button red-square alphabet letter
1426+🆎 ab button red-square alphabet
1427+🅱️ b button red-square alphabet letter
1428+🆑 cl button alphabet words red-square
1429+🆒 cool button words blue-square
1430+🆓 free button blue-square words
1431+ℹ️ information blue-square alphabet letter
1432+🆔 id button purple-square words
1433+Ⓜ️ circled m alphabet blue-circle letter
1434+🆕 new button blue-square words start
1435+🆖 ng button blue-square words shape icon
1436+🅾️ o button alphabet red-square letter
1437+🆗 ok button good agree yes blue-square
1438+🅿️ p button cars blue-square alphabet letter
1439+🆘 sos button help red-square words emergency 911
1440+🆙 up button blue-square above high
1441+🆚 vs button words orange-square
1442+🈁 japanese here button blue-square here katakana japanese destination
1443+🈂️ japanese service charge button japanese blue-square katakana
1444+🈷️ japanese monthly amount button chinese month moon japanese orange-square kanji
1445+🈶 japanese not free of charge button orange-square chinese have kanji
1446+🈯 japanese reserved button chinese point green-square kanji
1447+🉐 japanese bargain button chinese kanji obtain get circle
1448+🈹 japanese discount button cut divide chinese kanji pink-square
1449+🈚 japanese free of charge button nothing chinese kanji japanese orange-square
1450+🈲 japanese prohibited button kanji japanese chinese forbidden limit restricted red-square
1451+🉑 japanese acceptable button ok good chinese kanji agree yes orange-circle
1452+🈸 japanese application button chinese japanese kanji orange-square
1453+🈴 japanese passing grade button japanese chinese join kanji red-square
1454+🈳 japanese vacancy button kanji japanese chinese empty sky blue-square
1455+㊗️ japanese congratulations button chinese kanji japanese red-circle
1456+㊙️ japanese secret button privacy chinese sshh kanji red-circle
1457+🈺 japanese open for business button japanese opening hours orange-square
1458+🈵 japanese no vacancy button full chinese japanese red-square kanji
1459+🔴 red circle shape error danger
1460+🟠 orange circle round
1461+🟡 yellow circle round
1462+🟢 green circle round
1463+🔵 blue circle shape icon button
1464+🟣 purple circle round
1465+🟤 brown circle round
1466+⚫ black circle shape button round
1467+⚪ white circle shape round
1468+🟥 red square
1469+🟧 orange square
1470+🟨 yellow square
1471+🟩 green square
1472+🟦 blue square
1473+🟪 purple square
1474+🟫 brown square
1475+⬛ black large square shape icon button
1476+⬜ white large square shape icon stone button
1477+◼️ black medium square shape button icon
1478+◻️ white medium square shape stone icon
1479+◾ black medium small square icon shape button
1480+◽ white medium small square shape stone icon button
1481+▪️ black small square shape icon
1482+▫️ white small square shape icon
1483+🔶 large orange diamond shape jewel gem
1484+🔷 large blue diamond shape jewel gem
1485+🔸 small orange diamond shape jewel gem
1486+🔹 small blue diamond shape jewel gem
1487+🔺 red triangle pointed up shape direction up top
1488+🔻 red triangle pointed down shape direction bottom
1489+💠 diamond with a dot jewel blue gem crystal fancy
1490+🔘 radio button input old music circle
1491+🔳 white square button shape input
1492+🔲 black square button shape input frame
1493+🏁 chequered flag contest finishline race gokart
1494+🚩 triangular flag mark milestone place
1495+🎌 crossed flags japanese nation country border
1496+🏴 black flag pirate
1497+🏳️ white flag losing loser lost surrender give up fail
1498+🏳️‍🌈 rainbow flag flag rainbow pride gay lgbt glbt queer homosexual lesbian bisexual transgender
1499+🏴‍☠️ pirate flag skull crossbones flag banner
1500+🇦🇨 flag ascension island
1501+🇦🇩 flag andorra ad flag nation country banner andorra
1502+🇦🇪 flag united arab emirates united arab emirates flag nation country banner united arab emirates
1503+🇦🇫 flag afghanistan af flag nation country banner afghanistan
1504+🇦🇬 flag antigua barbuda antigua barbuda flag nation country banner antigua barbuda
1505+🇦🇮 flag anguilla ai flag nation country banner anguilla
1506+🇦🇱 flag albania al flag nation country banner albania
1507+🇦🇲 flag armenia am flag nation country banner armenia
1508+🇦🇴 flag angola ao flag nation country banner angola
1509+🇦🇶 flag antarctica aq flag nation country banner antarctica
1510+🇦🇷 flag argentina ar flag nation country banner argentina
1511+🇦🇸 flag american samoa american ws flag nation country banner american samoa
1512+🇦🇹 flag austria at flag nation country banner austria
1513+🇦🇺 flag australia au flag nation country banner australia
1514+🇦🇼 flag aruba aw flag nation country banner aruba
1515+🇦🇽 flag aland islands Åland islands flag nation country banner aland islands
1516+🇦🇿 flag azerbaijan az flag nation country banner azerbaijan
1517+🇧🇦 flag bosnia herzegovina bosnia herzegovina flag nation country banner bosnia herzegovina
1518+🇧🇧 flag barbados bb flag nation country banner barbados
1519+🇧🇩 flag bangladesh bd flag nation country banner bangladesh
1520+🇧🇪 flag belgium be flag nation country banner belgium
1521+🇧🇫 flag burkina faso burkina faso flag nation country banner burkina faso
1522+🇧🇬 flag bulgaria bg flag nation country banner bulgaria
1523+🇧🇭 flag bahrain bh flag nation country banner bahrain
1524+🇧🇮 flag burundi bi flag nation country banner burundi
1525+🇧🇯 flag benin bj flag nation country banner benin
1526+🇧🇱 flag st barthelemy saint barthélemy flag nation country banner st barthelemy
1527+🇧🇲 flag bermuda bm flag nation country banner bermuda
1528+🇧🇳 flag brunei bn darussalam flag nation country banner brunei
1529+🇧🇴 flag bolivia bo flag nation country banner bolivia
1530+🇧🇶 flag caribbean netherlands bonaire flag nation country banner caribbean netherlands
1531+🇧🇷 flag brazil br flag nation country banner brazil
1532+🇧🇸 flag bahamas bs flag nation country banner bahamas
1533+🇧🇹 flag bhutan bt flag nation country banner bhutan
1534+🇧🇻 flag bouvet island norway
1535+🇧🇼 flag botswana bw flag nation country banner botswana
1536+🇧🇾 flag belarus by flag nation country banner belarus
1537+🇧🇿 flag belize bz flag nation country banner belize
1538+🇨🇦 flag canada ca flag nation country banner canada
1539+🇨🇨 flag cocos islands cocos keeling islands flag nation country banner cocos islands
1540+🇨🇩 flag congo kinshasa congo democratic republic flag nation country banner congo kinshasa
1541+🇨🇫 flag central african republic central african republic flag nation country banner central african republic
1542+🇨🇬 flag congo brazzaville congo flag nation country banner congo brazzaville
1543+🇨🇭 flag switzerland ch flag nation country banner switzerland
1544+🇨🇮 flag cote d ivoire ivory coast flag nation country banner cote d ivoire
1545+🇨🇰 flag cook islands cook islands flag nation country banner cook islands
1546+🇨🇱 flag chile flag nation country banner chile
1547+🇨🇲 flag cameroon cm flag nation country banner cameroon
1548+🇨🇳 flag china china chinese prc flag country nation banner china
1549+🇨🇴 flag colombia co flag nation country banner colombia
1550+🇨🇵 flag clipperton island
1551+🇨🇷 flag costa rica costa rica flag nation country banner costa rica
1552+🇨🇺 flag cuba cu flag nation country banner cuba
1553+🇨🇻 flag cape verde cabo verde flag nation country banner cape verde
1554+🇨🇼 flag curacao curaçao flag nation country banner curacao
1555+🇨🇽 flag christmas island christmas island flag nation country banner christmas island
1556+🇨🇾 flag cyprus cy flag nation country banner cyprus
1557+🇨🇿 flag czechia cz flag nation country banner czechia
1558+🇩🇪 flag germany german nation flag country banner germany
1559+🇩🇬 flag diego garcia
1560+🇩🇯 flag djibouti dj flag nation country banner djibouti
1561+🇩🇰 flag denmark dk flag nation country banner denmark
1562+🇩🇲 flag dominica dm flag nation country banner dominica
1563+🇩🇴 flag dominican republic dominican republic flag nation country banner dominican republic
1564+🇩🇿 flag algeria dz flag nation country banner algeria
1565+🇪🇦 flag ceuta melilla
1566+🇪🇨 flag ecuador ec flag nation country banner ecuador
1567+🇪🇪 flag estonia ee flag nation country banner estonia
1568+🇪🇬 flag egypt eg flag nation country banner egypt
1569+🇪🇭 flag western sahara western sahara flag nation country banner western sahara
1570+🇪🇷 flag eritrea er flag nation country banner eritrea
1571+🇪🇸 flag spain spain flag nation country banner spain
1572+🇪🇹 flag ethiopia et flag nation country banner ethiopia
1573+🇪🇺 flag european union european union flag banner
1574+🇫🇮 flag finland fi flag nation country banner finland
1575+🇫🇯 flag fiji fj flag nation country banner fiji
1576+🇫🇰 flag falkland islands falkland islands malvinas flag nation country banner falkland islands
1577+🇫🇲 flag micronesia micronesia federated states flag nation country banner micronesia
1578+🇫🇴 flag faroe islands faroe islands flag nation country banner faroe islands
1579+🇫🇷 flag france banner flag nation france french country france
1580+🇬🇦 flag gabon ga flag nation country banner gabon
1581+🇬🇧 flag united kingdom united kingdom great britain northern ireland flag nation country banner british UK english england union jack united kingdom
1582+🇬🇩 flag grenada gd flag nation country banner grenada
1583+🇬🇪 flag georgia ge flag nation country banner georgia
1584+🇬🇫 flag french guiana french guiana flag nation country banner french guiana
1585+🇬🇬 flag guernsey gg flag nation country banner guernsey
1586+🇬🇭 flag ghana gh flag nation country banner ghana
1587+🇬🇮 flag gibraltar gi flag nation country banner gibraltar
1588+🇬🇱 flag greenland gl flag nation country banner greenland
1589+🇬🇲 flag gambia gm flag nation country banner gambia
1590+🇬🇳 flag guinea gn flag nation country banner guinea
1591+🇬🇵 flag guadeloupe gp flag nation country banner guadeloupe
1592+🇬🇶 flag equatorial guinea equatorial gn flag nation country banner equatorial guinea
1593+🇬🇷 flag greece gr flag nation country banner greece
1594+🇬🇸 flag south georgia south sandwich islands south georgia sandwich islands flag nation country banner south georgia south sandwich islands
1595+🇬🇹 flag guatemala gt flag nation country banner guatemala
1596+🇬🇺 flag guam gu flag nation country banner guam
1597+🇬🇼 flag guinea bissau gw bissau flag nation country banner guinea bissau
1598+🇬🇾 flag guyana gy flag nation country banner guyana
1599+🇭🇰 flag hong kong sar china hong kong flag nation country banner hong kong sar china
1600+🇭🇲 flag heard mcdonald islands
1601+🇭🇳 flag honduras hn flag nation country banner honduras
1602+🇭🇷 flag croatia hr flag nation country banner croatia
1603+🇭🇹 flag haiti ht flag nation country banner haiti
1604+🇭🇺 flag hungary hu flag nation country banner hungary
1605+🇮🇨 flag canary islands canary islands flag nation country banner canary islands
1606+🇮🇩 flag indonesia flag nation country banner indonesia
1607+🇮🇪 flag ireland ie flag nation country banner ireland
1608+🇮🇱 flag israel il flag nation country banner israel
1609+🇮🇲 flag isle of man isle man flag nation country banner isle of man
1610+🇮🇳 flag india in flag nation country banner india
1611+🇮🇴 flag british indian ocean territory british indian ocean territory flag nation country banner british indian ocean territory
1612+🇮🇶 flag iraq iq flag nation country banner iraq
1613+🇮🇷 flag iran iran islamic republic flag nation country banner iran
1614+🇮🇸 flag iceland is flag nation country banner iceland
1615+🇮🇹 flag italy italy flag nation country banner italy
1616+🇯🇪 flag jersey je flag nation country banner jersey
1617+🇯🇲 flag jamaica jm flag nation country banner jamaica
1618+🇯🇴 flag jordan jo flag nation country banner jordan
1619+🇯🇵 flag japan japanese nation flag country banner japan
1620+🇰🇪 flag kenya ke flag nation country banner kenya
1621+🇰🇬 flag kyrgyzstan kg flag nation country banner kyrgyzstan
1622+🇰🇭 flag cambodia kh flag nation country banner cambodia
1623+🇰🇮 flag kiribati ki flag nation country banner kiribati
1624+🇰🇲 flag comoros km flag nation country banner comoros
1625+🇰🇳 flag st kitts nevis saint kitts nevis flag nation country banner st kitts nevis
1626+🇰🇵 flag north korea north korea nation flag country banner north korea
1627+🇰🇷 flag south korea south korea nation flag country banner south korea
1628+🇰🇼 flag kuwait kw flag nation country banner kuwait
1629+🇰🇾 flag cayman islands cayman islands flag nation country banner cayman islands
1630+🇰🇿 flag kazakhstan kz flag nation country banner kazakhstan
1631+🇱🇦 flag laos lao democratic republic flag nation country banner laos
1632+🇱🇧 flag lebanon lb flag nation country banner lebanon
1633+🇱🇨 flag st lucia saint lucia flag nation country banner st lucia
1634+🇱🇮 flag liechtenstein li flag nation country banner liechtenstein
1635+🇱🇰 flag sri lanka sri lanka flag nation country banner sri lanka
1636+🇱🇷 flag liberia lr flag nation country banner liberia
1637+🇱🇸 flag lesotho ls flag nation country banner lesotho
1638+🇱🇹 flag lithuania lt flag nation country banner lithuania
1639+🇱🇺 flag luxembourg lu flag nation country banner luxembourg
1640+🇱🇻 flag latvia lv flag nation country banner latvia
1641+🇱🇾 flag libya ly flag nation country banner libya
1642+🇲🇦 flag morocco ma flag nation country banner morocco
1643+🇲🇨 flag monaco mc flag nation country banner monaco
1644+🇲🇩 flag moldova moldova republic flag nation country banner moldova
1645+🇲🇪 flag montenegro me flag nation country banner montenegro
1646+🇲🇫 flag st martin
1647+🇲🇬 flag madagascar mg flag nation country banner madagascar
1648+🇲🇭 flag marshall islands marshall islands flag nation country banner marshall islands
1649+🇲🇰 flag north macedonia macedonia flag nation country banner north macedonia
1650+🇲🇱 flag mali ml flag nation country banner mali
1651+🇲🇲 flag myanmar mm flag nation country banner myanmar
1652+🇲🇳 flag mongolia mn flag nation country banner mongolia
1653+🇲🇴 flag macao sar china macao flag nation country banner macao sar china
1654+🇲🇵 flag northern mariana islands northern mariana islands flag nation country banner northern mariana islands
1655+🇲🇶 flag martinique mq flag nation country banner martinique
1656+🇲🇷 flag mauritania mr flag nation country banner mauritania
1657+🇲🇸 flag montserrat ms flag nation country banner montserrat
1658+🇲🇹 flag malta mt flag nation country banner malta
1659+🇲🇺 flag mauritius mu flag nation country banner mauritius
1660+🇲🇻 flag maldives mv flag nation country banner maldives
1661+🇲🇼 flag malawi mw flag nation country banner malawi
1662+🇲🇽 flag mexico mx flag nation country banner mexico
1663+🇲🇾 flag malaysia my flag nation country banner malaysia
1664+🇲🇿 flag mozambique mz flag nation country banner mozambique
1665+🇳🇦 flag namibia na flag nation country banner namibia
1666+🇳🇨 flag new caledonia new caledonia flag nation country banner new caledonia
1667+🇳🇪 flag niger ne flag nation country banner niger
1668+🇳🇫 flag norfolk island norfolk island flag nation country banner norfolk island
1669+🇳🇬 flag nigeria flag nation country banner nigeria
1670+🇳🇮 flag nicaragua ni flag nation country banner nicaragua
1671+🇳🇱 flag netherlands nl flag nation country banner netherlands
1672+🇳🇴 flag norway no flag nation country banner norway
1673+🇳🇵 flag nepal np flag nation country banner nepal
1674+🇳🇷 flag nauru nr flag nation country banner nauru
1675+🇳🇺 flag niue nu flag nation country banner niue
1676+🇳🇿 flag new zealand new zealand flag nation country banner new zealand
1677+🇴🇲 flag oman om symbol flag nation country banner oman
1678+🇵🇦 flag panama pa flag nation country banner panama
1679+🇵🇪 flag peru pe flag nation country banner peru
1680+🇵🇫 flag french polynesia french polynesia flag nation country banner french polynesia
1681+🇵🇬 flag papua new guinea papua new guinea flag nation country banner papua new guinea
1682+🇵🇭 flag philippines ph flag nation country banner philippines
1683+🇵🇰 flag pakistan pk flag nation country banner pakistan
1684+🇵🇱 flag poland pl flag nation country banner poland
1685+🇵🇲 flag st pierre miquelon saint pierre miquelon flag nation country banner st pierre miquelon
1686+🇵🇳 flag pitcairn islands pitcairn flag nation country banner pitcairn islands
1687+🇵🇷 flag puerto rico puerto rico flag nation country banner puerto rico
1688+🇵🇸 flag palestinian territories palestine palestinian territories flag nation country banner palestinian territories
1689+🇵🇹 flag portugal pt flag nation country banner portugal
1690+🇵🇼 flag palau pw flag nation country banner palau
1691+🇵🇾 flag paraguay py flag nation country banner paraguay
1692+🇶🇦 flag qatar qa flag nation country banner qatar
1693+🇷🇪 flag reunion réunion flag nation country banner reunion
1694+🇷🇴 flag romania ro flag nation country banner romania
1695+🇷🇸 flag serbia rs flag nation country banner serbia
1696+🇷🇺 flag russia russian federation flag nation country banner russia
1697+🇷🇼 flag rwanda rw flag nation country banner rwanda
1698+🇸🇦 flag saudi arabia flag nation country banner saudi arabia
1699+🇸🇧 flag solomon islands solomon islands flag nation country banner solomon islands
1700+🇸🇨 flag seychelles sc flag nation country banner seychelles
1701+🇸🇩 flag sudan sd flag nation country banner sudan
1702+🇸🇪 flag sweden se flag nation country banner sweden
1703+🇸🇬 flag singapore sg flag nation country banner singapore
1704+🇸🇭 flag st helena saint helena ascension tristan cunha flag nation country banner st helena
1705+🇸🇮 flag slovenia si flag nation country banner slovenia
1706+🇸🇯 flag svalbard jan mayen
1707+🇸🇰 flag slovakia sk flag nation country banner slovakia
1708+🇸🇱 flag sierra leone sierra leone flag nation country banner sierra leone
1709+🇸🇲 flag san marino san marino flag nation country banner san marino
1710+🇸🇳 flag senegal sn flag nation country banner senegal
1711+🇸🇴 flag somalia so flag nation country banner somalia
1712+🇸🇷 flag suriname sr flag nation country banner suriname
1713+🇸🇸 flag south sudan south sd flag nation country banner south sudan
1714+🇸🇹 flag sao tome principe sao tome principe flag nation country banner sao tome principe
1715+🇸🇻 flag el salvador el salvador flag nation country banner el salvador
1716+🇸🇽 flag sint maarten sint maarten dutch flag nation country banner sint maarten
1717+🇸🇾 flag syria syrian arab republic flag nation country banner syria
1718+🇸🇿 flag eswatini sz flag nation country banner eswatini
1719+🇹🇦 flag tristan da cunha
1720+🇹🇨 flag turks caicos islands turks caicos islands flag nation country banner turks caicos islands
1721+🇹🇩 flag chad td flag nation country banner chad
1722+🇹🇫 flag french southern territories french southern territories flag nation country banner french southern territories
1723+🇹🇬 flag togo tg flag nation country banner togo
1724+🇹🇭 flag thailand th flag nation country banner thailand
1725+🇹🇯 flag tajikistan tj flag nation country banner tajikistan
1726+🇹🇰 flag tokelau tk flag nation country banner tokelau
1727+🇹🇱 flag timor leste timor leste flag nation country banner timor leste
1728+🇹🇲 flag turkmenistan flag nation country banner turkmenistan
1729+🇹🇳 flag tunisia tn flag nation country banner tunisia
1730+🇹🇴 flag tonga to flag nation country banner tonga
1731+🇹🇷 flag turkey turkey flag nation country banner turkey
1732+🇹🇹 flag trinidad tobago trinidad tobago flag nation country banner trinidad tobago
1733+🇹🇻 flag tuvalu flag nation country banner tuvalu
1734+🇹🇼 flag taiwan tw flag nation country banner taiwan
1735+🇹🇿 flag tanzania tanzania united republic flag nation country banner tanzania
1736+🇺🇦 flag ukraine ua flag nation country banner ukraine
1737+🇺🇬 flag uganda ug flag nation country banner uganda
1738+🇺🇲 flag u s outlying islands
1739+🇺🇳 flag united nations un flag banner
1740+🇺🇸 flag united states united states america flag nation country banner united states
1741+🇺🇾 flag uruguay uy flag nation country banner uruguay
1742+🇺🇿 flag uzbekistan uz flag nation country banner uzbekistan
1743+🇻🇦 flag vatican city vatican city flag nation country banner vatican city
1744+🇻🇨 flag st vincent grenadines saint vincent grenadines flag nation country banner st vincent grenadines
1745+🇻🇪 flag venezuela ve bolivarian republic flag nation country banner venezuela
1746+🇻🇬 flag british virgin islands british virgin islands bvi flag nation country banner british virgin islands
1747+🇻🇮 flag u s virgin islands virgin islands us flag nation country banner u s virgin islands
1748+🇻🇳 flag vietnam viet nam flag nation country banner vietnam
1749+🇻🇺 flag vanuatu vu flag nation country banner vanuatu
1750+🇼🇫 flag wallis futuna wallis futuna flag nation country banner wallis futuna
1751+🇼🇸 flag samoa ws flag nation country banner samoa
1752+🇽🇰 flag kosovo xk flag nation country banner kosovo
1753+🇾🇪 flag yemen ye flag nation country banner yemen
1754+🇾🇹 flag mayotte yt flag nation country banner mayotte
1755+🇿🇦 flag south africa south africa flag nation country banner south africa
1756+🇿🇲 flag zambia zm flag nation country banner zambia
1757+🇿🇼 flag zimbabwe zw flag nation country banner zimbabwe
1758+🏴󠁧󠁢󠁥󠁮󠁧󠁿 flag england flag english
1759+🏴󠁧󠁢󠁳󠁣󠁴󠁿 flag scotland flag scottish
1760+🏴󠁧󠁢󠁷󠁬󠁳󠁿 flag wales flag welsh
1761+🥲 smiling face with tear sad cry pretend
1762+🥸 disguised face pretent brows glasses moustache
1763+🤌 pinched fingers size tiny small
1764+🫀 anatomical heart health heartbeat
1765+🫁 lungs breathe
1766+🥷 ninja ninjutsu skills japanese
1767+🤵‍♂️ man in tuxedo formal fashion
1768+🤵‍♀️ woman in tuxedo formal fashion
1769+👰‍♂️ man with veil wedding marriage
1770+👰‍♀️ woman with veil wedding marriage
1771+👩‍🍼 woman feeding baby birth food
1772+👨‍🍼 man feeding baby birth food
1773+🧑‍🍼 person feeding baby birth food
1774+🧑‍🎄 mx claus christmas
1775+🫂 people hugging care
1776+🐈‍⬛ black cat superstition luck
1777+🦬 bison ox
1778+🦣 mammoth elephant tusks
1779+🦫 beaver animal rodent
1780+🐻‍❄️ polar bear animal arctic
1781+🦤 dodo animal bird
1782+🪶 feather bird fly
1783+🦭 seal animal creature sea
1784+🪲 beetle insect
1785+🪳 cockroach insect pests
1786+🪰 fly insect
1787+🪱 worm animal
1788+🪴 potted plant greenery house
1789+🫐 blueberries fruit
1790+🫒 olive fruit
1791+🫑 bell pepper fruit plant
1792+🫓 flatbread flour food
1793+🫔 tamale food masa
1794+🫕 fondue cheese pot food
1795+🫖 teapot drink hot
1796+🧋 bubble tea taiwan boba milk tea straw
1797+🪨 rock stone
1798+🪵 wood nature timber trunk
1799+🛖 hut house structure
1800+🛻 pickup truck car transportation
1801+🛼 roller skate footwear sports
1802+🪄 magic wand supernature power
1803+🪅 pinata mexico candy celebration
1804+🪆 nesting dolls matryoshka toy
1805+🪡 sewing needle stitches
1806+🪢 knot rope scout
1807+🩴 thong sandal footwear summer
1808+🪖 military helmet army protection
1809+🪗 accordion music
1810+🪘 long drum music
1811+🪙 coin money currency
1812+🪃 boomerang weapon
1813+🪚 carpentry saw cut chop
1814+🪛 screwdriver tools
1815+🪝 hook tools
1816+🪜 ladder tools
1817+🛗 elevator lift
1818+🪞 mirror reflection
1819+🪟 window scenery
1820+🪠 plunger toilet
1821+🪤 mouse trap cheese
1822+🪣 bucket water container
1823+🪥 toothbrush hygiene dental
1824+🪦 headstone death rip grave
1825+🪧 placard announcement
1826+⚧️ transgender symbol lgbtq
1827+🏳️‍⚧️ transgender flag lgbtq
1828+😶‍🌫️ face in clouds shower steam dream
1829+😮‍💨 face exhaling relieve relief tired sigh
1830+😵‍💫 face with spiral eyes sick ill confused nauseous nausea
1831+❤️‍🔥 heart on fire passionate enthusiastic
1832+❤️‍🩹 mending heart broken heart bandage wounded
1833+🧔‍♂️ man beard facial hair
1834+🧔‍♀️ woman beard facial hair
1835+🫠 melting face hot heat
1836+🫢 face with open eyes and hand over mouth silence secret shock surprise
1837+🫣 face with peeking eye scared frightening embarrassing
1838+🫡 saluting face respect salute
1839+🫥 dotted line face invisible lonely isolation depression
1840+🫤 face with diagonal mouth skeptic confuse frustrated indifferent
1841+🥹 face holding back tears touched gratitude
1842+🫱 rightwards hand palm offer
1843+🫲 leftwards hand palm offer
1844+🫳 palm down hand palm drop
1845+🫴 palm up hand lift offer demand
1846+🫰 hand with index finger and thumb crossed heart love money expensive
1847+🫵 index pointing at the viewer you recruit
1848+🫶 heart hands love appreciation support
1849+🫦 biting lip flirt sexy pain worry
1850+🫅 person with crown royalty power
1851+🫃 pregnant man baby belly
1852+🫄 pregnant person baby belly
1853+🧌 troll mystical monster
1854+🪸 coral ocean sea reef
1855+🪷 lotus flower calm meditation
1856+🪹 empty nest bird
1857+🪺 nest with eggs bird
1858+🫘 beans food
1859+🫗 pouring liquid cup water
1860+🫙 jar container sauce
1861+🛝 playground slide fun park
1862+🛞 wheel car transport
1863+🛟 ring buoy life saver life preserver
1864+🪬 hamsa religion protection
1865+🪩 mirror ball disco dance party
1866+🪫 low battery drained dead
1867+🩼 crutch accessibility assist
1868+🩻 x-ray skeleton medicine
1869+🫧 bubbles soap fun carbonation sparkling
1870+🪪 identification card document
1871+🟰 heavy equals sign math
+36-0scripts/RofiSearch.sh
@@ -0,0 +1,36 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
3+# For Searching via web browsers
4+
5+# Define the path to the config file
6+config_file=$HOME/.config/hypr/UserConfigs/01-UserDefaults.conf
7+
8+# Check if the config file exists
9+if [[ ! -f "$config_file" ]]; then
10+ echo "Error: Configuration file not found!"
11+ exit 1
12+fi
13+
14+# Process the config file in memory, removing the $ and fixing spaces
15+config_content=$(sed 's/\$//g' "$config_file" | sed 's/ = /=/')
16+
17+# Source the modified content directly from the variable
18+eval "$config_content"
19+
20+# Check if $term is set correctly
21+if [[ -z "$Search_Engine" ]]; then
22+ echo "Error: \$Search_Engine is not set in the configuration file!"
23+ exit 1
24+fi
25+
26+# Rofi theme and message
27+rofi_theme="$HOME/.config/rofi/config-search.rasi"
28+msg='‼️ **note** ‼️ search via default web browser'
29+
30+# Kill Rofi if already running before execution
31+if pgrep -x "rofi" >/dev/null; then
32+ pkill rofi
33+fi
34+
35+# Open Rofi and pass the selected query to xdg-open for Google search
36+echo "" | rofi -dmenu -config "$rofi_theme" -mesg "$msg" | xargs -I{} xdg-open $Search_Engine
+229-0scripts/RofiThemeSelector-modified.sh
@@ -0,0 +1,229 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
3+# A modified version of Rofi-Theme-Selector, concentrating only on ~/.local and also, applying only 10 @themes in ~/.config/rofi/config.rasi
4+# as opposed to continous adding of //@theme
5+
6+# This code is released in public domain by Dave Davenport <qball@gmpclient.org>
7+
8+iDIR="$HOME/.config/swaync/images"
9+
10+
11+OS="linux"
12+
13+ROFI=$(command -v rofi)
14+SED=$(command -v sed)
15+MKTEMP=$(command -v mktemp)
16+NOTIFY_SEND=$(command -v notify-send)
17+
18+if [ -z "${SED}" ]
19+then
20+ echo "Did not find 'sed', script cannot continue."
21+ exit 1
22+fi
23+if [ -z "${MKTEMP}" ]
24+then
25+ echo "Did not find 'mktemp', script cannot continue."
26+ exit 1
27+fi
28+if [ -z "${ROFI}" ]
29+then
30+ echo "Did not find rofi, there is no point to continue."
31+ exit 1
32+fi
33+if [ -z "${NOTIFY_SEND}" ]
34+then
35+ echo "Did not find 'notify-send', notifications won't work."
36+fi
37+
38+TMP_CONFIG_FILE=$(${MKTEMP}).rasi
39+#rofi_theme_dir="${HOME}/.local/share/rofi/themes"
40+rofi_config_file="${XDG_CONFIG_HOME:-${HOME}/.config}/rofi/config.rasi"
41+
42+##
43+# Array with parts to the found themes.
44+# And array with the printable name.
45+##
46+declare -a themes
47+declare -a theme_names
48+
49+##
50+# Function that tries to find all installed rofi themes.
51+# This fills in #themes array and formats a displayable string #theme_names
52+##
53+# Find themes in defined directories
54+find_themes() {
55+ directories=("$HOME/.local/share/rofi/themes" "$HOME/.config/rofi/themes")
56+
57+ for TD in "${directories[@]}"; do
58+ if [ -d "$TD" ]; then
59+ echo "Checking themes in: $TD"
60+ for file in "$TD"/*.rasi; do
61+ if [ -f "$file" ] && [ ! -L "$file" ]; then
62+ themes+=("$file")
63+ theme_names+=("$(basename "${file%.*}")")
64+ else
65+ echo "Skipping symlink: $file"
66+ fi
67+ done
68+ else
69+ echo "Directory does not exist: $TD"
70+ fi
71+ done
72+}
73+
74+##
75+# Function to add or update theme in the config.rasi
76+##
77+add_theme_to_config() {
78+ local theme_name="$1"
79+ local theme_path
80+
81+ # Determine the correct path for the theme
82+ if [[ -f "$HOME/.local/share/rofi/themes/$theme_name.rasi" ]]; then
83+ theme_path="$HOME/.local/share/rofi/themes/$theme_name.rasi"
84+ elif [[ -f "$HOME/.config/rofi/themes/$theme_name.rasi" ]]; then
85+ theme_path="$HOME/.config/rofi/themes/$theme_name.rasi"
86+ else
87+ echo "Theme not found: $theme_name"
88+ return 1
89+ fi
90+
91+ # Resolve symlinks if present
92+ if [[ -L "$theme_path" ]]; then
93+ theme_path=$(readlink -f "$theme_path")
94+ fi
95+
96+ # Convert path to use ~ for home directory
97+ theme_path_with_tilde="~${theme_path#$HOME}"
98+
99+ # Add or update @theme line in config
100+ if ! grep -q '^\s*@theme' "$rofi_config_file"; then
101+ echo -e "\n\n@theme \"$theme_path_with_tilde\"" >> "$rofi_config_file"
102+ echo "Added @theme \"$theme_path_with_tilde\" to $rofi_config_file"
103+ else
104+ $SED -i "s/^\(\s*@theme.*\)/\/\/\1/" "$rofi_config_file"
105+ echo -e "@theme \"$theme_path_with_tilde\"" >> "$rofi_config_file"
106+ echo "Updated @theme line to $theme_path_with_tilde"
107+ fi
108+
109+ # Limit the number of @theme lines to a maximum of 9
110+ max_lines=9
111+ total_lines=$(grep -c '^\s*//@theme' "$rofi_config_file")
112+
113+ if [ "$total_lines" -gt "$max_lines" ]; then
114+ excess=$((total_lines - max_lines))
115+ for i in $(seq 1 "$excess"); do
116+ $SED -i '0,/^\s*\/\/@theme/ { /^\s*\/\/@theme/ {d; q; }}' "$rofi_config_file"
117+ done
118+ echo "Removed excess //@theme lines"
119+ fi
120+}
121+
122+##
123+# Create a copy of rofi config
124+##
125+create_config_copy()
126+{
127+ ${ROFI} -dump-config > "${TMP_CONFIG_FILE}"
128+ # remove theme entry.
129+ ${SED} -i 's/^\s*theme:\s\+".*"\s*;//g' "${TMP_CONFIG_FILE}"
130+}
131+
132+###
133+# Print the list out so it can be displayed by rofi.
134+##
135+create_theme_list()
136+{
137+ OLDIFS=${IFS}
138+ IFS='|'
139+ for themen in ${theme_names[@]}
140+ do
141+ echo "${themen}"
142+ done
143+ IFS=${OLDIFS}
144+}
145+
146+##
147+# Thee indicate what entry is selected.
148+##
149+declare -i SELECTED
150+
151+select_theme()
152+{
153+ local MORE_FLAGS=(-dmenu -format i -no-custom -p "Theme" -markup -config "${TMP_CONFIG_FILE}" -i)
154+ MORE_FLAGS+=(-kb-custom-1 "Alt-a")
155+ MORE_FLAGS+=(-u 2,3 -a 4,5 )
156+ local CUR="default"
157+ while true
158+ do
159+ declare -i RTR
160+ declare -i RES
161+ local MESG="""You can preview themes by hitting <b>Enter</b>.
162+<b>Alt-a</b> to accept the new theme.
163+<b>Escape</b> to cancel
164+Current theme: <b>${CUR}</b>
165+<span weight=\"bold\" size=\"xx-small\">When setting a new theme this will override previous theme settings.
166+Please update your config file if you have local modifications.</span>"""
167+ THEME_FLAG=
168+ if [ -n "${SELECTED}" ]
169+ then
170+ THEME_FLAG="-theme ${themes[${SELECTED}]}"
171+ fi
172+ RES=$( create_theme_list | ${ROFI} ${THEME_FLAG} ${MORE_FLAGS[@]} -cycle -selected-row "${SELECTED}" -mesg "${MESG}")
173+ RTR=$?
174+ if [ "${RTR}" = 10 ]
175+ then
176+ return 0;
177+ elif [ "${RTR}" = 1 ]
178+ then
179+ return 1;
180+ elif [ "${RTR}" = 65 ]
181+ then
182+ return 1;
183+ fi
184+ CUR=${theme_names[${RES}]}
185+ SELECTED=${RES}
186+ done
187+}
188+
189+############################################################################################################
190+# Actual program execution
191+###########################################################################################################
192+##
193+# Find all themes
194+##
195+find_themes
196+
197+##
198+# Do check if there are themes.
199+##
200+if [ ${#themes[@]} = 0 ]
201+then
202+ ${ROFI} -e "No themes found."
203+ exit 0
204+fi
205+
206+##
207+# Create copy of config to play with in preview
208+##
209+create_config_copy
210+
211+##
212+# Show the themes to user.
213+##
214+if select_theme && [ -n "${SELECTED}" ]
215+then
216+ # Apply the selected theme
217+ add_theme_to_config "${theme_names[${SELECTED}]}"
218+
219+ # Send notification with the selected theme name
220+ selection="${theme_names[${SELECTED}]}"
221+ if [ -n "$NOTIFY_SEND" ]; then
222+ notify-send -u low -i "$iDIR/ja.png" "Rofi Theme applied:" "$selection"
223+ fi
224+fi
225+
226+##
227+# Remove temp. config.
228+##
229+rm -- "${TMP_CONFIG_FILE}"
+75-0scripts/RofiThemeSelector.sh
@@ -0,0 +1,75 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
3+# Script for adding a selected theme to the Rofi config
4+
5+IFS=$'\n\t'
6+
7+# Define directories and variables
8+rofi_theme_dir="$HOME/.config/rofi/themes"
9+rofi_config_file="$HOME/.config/rofi/config.rasi"
10+SED=$(which sed)
11+iDIR="$HOME/.config/swaync/images"
12+rofi_theme="$HOME/.config/rofi/config-rofi-theme.rasi"
13+
14+# Function to display menu options
15+menu() {
16+ options=()
17+ while IFS= read -r file; do
18+ options+=("$file")
19+ done < <(find -L "$rofi_theme_dir" -maxdepth 1 -type f -exec basename {} \; | sort -V)
20+
21+ printf '%s\n' "${options[@]}"
22+}
23+
24+# Function to add or update theme in the config.rasi
25+add_theme_to_config() {
26+ local theme_name="$1"
27+ local theme_path="$rofi_theme_dir/$theme_name"
28+
29+ # if config in $HOME to write as $HOME
30+ if [[ "$theme_path" == $HOME/* ]]; then
31+ theme_path_with_tilde="~${theme_path#$HOME}"
32+ else
33+ theme_path_with_tilde="$theme_path"
34+ fi
35+
36+ # If no @theme is in the file, add it
37+ if ! grep -q '^\s*@theme' "$rofi_config_file"; then
38+ echo -e "\n\n@theme \"$theme_path_with_tilde\"" >> "$rofi_config_file"
39+ echo "Added @theme \"$theme_path_with_tilde\" to $rofi_config_file"
40+ else
41+ $SED -i "s/^\(\s*@theme.*\)/\/\/\1/" "$rofi_config_file"
42+ echo -e "@theme \"$theme_path_with_tilde\"" >> "$rofi_config_file"
43+ echo "Updated @theme line to $theme_path_with_tilde"
44+ fi
45+
46+ # Ensure no more than max # of lines with //@theme lines
47+ max_line="9"
48+ total_lines=$(grep -c '^\s*//@theme' "$rofi_config_file")
49+
50+ if [ "$total_lines" -gt "$max_line" ]; then
51+ excess=$((total_lines - max_line))
52+ # Remove the oldest or the very top //@theme lines
53+ for i in $(seq 1 "$excess"); do
54+ $SED -i '0,/^\s*\/\/@theme/ { /^\s*\/\/@theme/ {d; q; }}' "$rofi_config_file"
55+ done
56+ echo "Removed excess //@theme lines"
57+ fi
58+}
59+
60+# Main function
61+main() {
62+ choice=$(menu | rofi rofi -dmenu -i -config $rofi_theme)
63+
64+ if [[ -z "$choice" ]]; then
65+ exit 0
66+ fi
67+ add_theme_to_config "$choice"
68+ notify-send -i "$iDIR/ja.png" -u low 'Rofi Theme applied:' "$choice"
69+}
70+
71+if pgrep -x "rofi" >/dev/null; then
72+ pkill rofi
73+fi
74+
75+main
+166-0scripts/ScreenShot.sh
@@ -0,0 +1,166 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
3+# Screenshots scripts
4+
5+# variables
6+time=$(date "+%d-%b_%H-%M-%S")
7+dir="$(xdg-user-dir)/Pictures/Screenshots"
8+file="Screenshot_${time}_${RANDOM}.png"
9+
10+iDIR="$HOME/.config/swaync/icons"
11+iDoR="$HOME/.config/swaync/images"
12+sDIR="$HOME/.config/hypr/scripts"
13+
14+active_window_class=$(hyprctl -j activewindow | jq -r '(.class)')
15+active_window_file="Screenshot_${time}_${active_window_class}.png"
16+active_window_path="${dir}/${active_window_file}"
17+
18+notify_cmd_base="notify-send -t 10000 -A action1=Open -A action2=Delete -h string:x-canonical-private-synchronous:shot-notify"
19+notify_cmd_shot="${notify_cmd_base} -i ${iDIR}/picture.png "
20+notify_cmd_shot_win="${notify_cmd_base} -i ${iDIR}/picture.png "
21+notify_cmd_NOT="notify-send -u low -i ${iDoR}/note.png "
22+
23+# notify and view screenshot
24+notify_view() {
25+ if [[ "$1" == "active" ]]; then
26+ if [[ -e "${active_window_path}" ]]; then
27+ "${sDIR}/Sounds.sh" --screenshot
28+ resp=$(timeout 5 ${notify_cmd_shot_win} " Screenshot of:" " ${active_window_class} Saved.")
29+ case "$resp" in
30+ action1)
31+ xdg-open "${active_window_path}" &
32+ ;;
33+ action2)
34+ rm "${active_window_path}" &
35+ ;;
36+ esac
37+ else
38+ ${notify_cmd_NOT} " Screenshot of:" " ${active_window_class} NOT Saved."
39+ "${sDIR}/Sounds.sh" --error
40+ fi
41+
42+ elif [[ "$1" == "swappy" ]]; then
43+ "${sDIR}/Sounds.sh" --screenshot
44+ resp=$(${notify_cmd_shot} " Screenshot:" " Captured by Swappy")
45+ case "$resp" in
46+ action1)
47+ swappy -f - <"$tmpfile"
48+ ;;
49+ action2)
50+ rm "$tmpfile"
51+ ;;
52+ esac
53+
54+ else
55+ local check_file="${dir}/${file}"
56+ if [[ -e "$check_file" ]]; then
57+ "${sDIR}/Sounds.sh" --screenshot
58+ resp=$(timeout 5 ${notify_cmd_shot} " Screenshot" " Saved")
59+ case "$resp" in
60+ action1)
61+ xdg-open "${check_file}" &
62+ ;;
63+ action2)
64+ rm "${check_file}" &
65+ ;;
66+ esac
67+ else
68+ ${notify_cmd_NOT} " Screenshot" " NOT Saved"
69+ "${sDIR}/Sounds.sh" --error
70+ fi
71+ fi
72+}
73+
74+# countdown
75+countdown() {
76+ for sec in $(seq $1 -1 1); do
77+ notify-send -h string:x-canonical-private-synchronous:shot-notify -t 1000 -i "$iDIR"/timer.png " Taking shot" " in: $sec secs"
78+ sleep 1
79+ done
80+}
81+
82+# take shots
83+shotnow() {
84+ cd ${dir} && grim - | tee "$file" | wl-copy
85+ sleep 2
86+ notify_view
87+}
88+
89+shot5() {
90+ countdown '5'
91+ sleep 1 && cd ${dir} && grim - | tee "$file" | wl-copy
92+ sleep 1
93+ notify_view
94+}
95+
96+shot10() {
97+ countdown '10'
98+ sleep 1 && cd ${dir} && grim - | tee "$file" | wl-copy
99+ notify_view
100+}
101+
102+shotwin() {
103+ w_pos=$(hyprctl activewindow | grep 'at:' | cut -d':' -f2 | tr -d ' ' | tail -n1)
104+ w_size=$(hyprctl activewindow | grep 'size:' | cut -d':' -f2 | tr -d ' ' | tail -n1 | sed s/,/x/g)
105+ cd ${dir} && grim -g "$w_pos $w_size" - | tee "$file" | wl-copy
106+ notify_view
107+}
108+
109+shotarea() {
110+ tmpfile=$(mktemp)
111+ grim -g "$(slurp)" - >"$tmpfile"
112+
113+ # Copy with saving
114+ if [[ -s "$tmpfile" ]]; then
115+ wl-copy <"$tmpfile"
116+ mv "$tmpfile" "$dir/$file"
117+ fi
118+ notify_view
119+}
120+
121+shotactive() {
122+ active_window_class=$(hyprctl -j activewindow | jq -r '(.class)')
123+ active_window_file="Screenshot_${time}_${active_window_class}.png"
124+ active_window_path="${dir}/${active_window_file}"
125+
126+ hyprctl -j activewindow | jq -r '"\(.at[0]),\(.at[1]) \(.size[0])x\(.size[1])"' | grim -g - "${active_window_path}"
127+ sleep 1
128+ notify_view "active"
129+}
130+
131+shotswappy() {
132+ tmpfile=$(mktemp)
133+ grim -g "$(slurp)" - >"$tmpfile"
134+ # hyprshot -m region -z
135+ # flameshot gui
136+
137+ # Copy without saving
138+ if [[ -s "$tmpfile" ]]; then
139+ wl-copy <"$tmpfile"
140+ notify_view "swappy"
141+ fi
142+}
143+
144+if [[ ! -d "$dir" ]]; then
145+ mkdir -p "$dir"
146+fi
147+
148+if [[ "$1" == "--now" ]]; then
149+ shotnow
150+elif [[ "$1" == "--in5" ]]; then
151+ shot5
152+elif [[ "$1" == "--in10" ]]; then
153+ shot10
154+elif [[ "$1" == "--win" ]]; then
155+ shotwin
156+elif [[ "$1" == "--area" ]]; then
157+ shotarea
158+elif [[ "$1" == "--active" ]]; then
159+ shotactive
160+elif [[ "$1" == "--swappy" ]]; then
161+ shotswappy
162+else
163+ echo -e "Available Options : --now --in5 --in10 --win --area --active --swappy"
164+fi
165+
166+exit 0
+77-0scripts/Sounds.sh
@@ -0,0 +1,77 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
3+# This script is used to play system sounds.
4+# Script is used by Volume.Sh and ScreenShots.sh
5+
6+theme="freedesktop" # Set the theme for the system sounds.
7+mute=false # Set to true to mute the system sounds.
8+
9+# Mute individual sounds here.
10+muteScreenshots=false
11+muteVolume=false
12+
13+# Exit if the system sounds are muted.
14+if [[ "$mute" = true ]]; then
15+ exit 0
16+fi
17+
18+# Choose the sound to play.
19+if [[ "$1" == "--screenshot" ]]; then
20+ if [[ "$muteScreenshots" = true ]]; then
21+ exit 0
22+ fi
23+ soundoption="screen-capture.*"
24+elif [[ "$1" == "--volume" ]]; then
25+ if [[ "$muteVolume" = true ]]; then
26+ exit 0
27+ fi
28+ soundoption="audio-volume-change.*"
29+elif [[ "$1" == "--error" ]]; then
30+ if [[ "$muteScreenshots" = true ]]; then
31+ exit 0
32+ fi
33+ soundoption="dialog-error.*"
34+else
35+ echo -e "Available sounds: --screenshot, --volume, --error"
36+ exit 0
37+fi
38+
39+# Set the directory defaults for system sounds.
40+if [ -d "/run/current-system/sw/share/sounds" ]; then
41+ systemDIR="/run/current-system/sw/share/sounds" # NixOS
42+else
43+ systemDIR="/usr/share/sounds"
44+fi
45+userDIR="$HOME/.local/share/sounds"
46+defaultTheme="freedesktop"
47+
48+# Prefer the user's theme, but use the system's if it doesn't exist.
49+sDIR="$systemDIR/$defaultTheme"
50+if [ -d "$userDIR/$theme" ]; then
51+ sDIR="$userDIR/$theme"
52+elif [ -d "$systemDIR/$theme" ]; then
53+ sDIR="$systemDIR/$theme"
54+fi
55+
56+# Get the theme that it inherits.
57+iTheme=$(cat "$sDIR/index.theme" | grep -i "inherits" | cut -d "=" -f 2)
58+iDIR="$sDIR/../$iTheme"
59+
60+# Find the sound file and play it.
61+sound_file=$(find -L $sDIR/stereo -name "$soundoption" -print -quit)
62+if ! test -f "$sound_file"; then
63+ sound_file=$(find -L $iDIR/stereo -name "$soundoption" -print -quit)
64+ if ! test -f "$sound_file"; then
65+ sound_file=$(find -L $userDIR/$defaultTheme/stereo -name "$soundoption" -print -quit)
66+ if ! test -f "$sound_file"; then
67+ sound_file=$(find -L $systemDIR/$defaultTheme/stereo -name "$soundoption" -print -quit)
68+ if ! test -f "$sound_file"; then
69+ echo "Error: Sound file not found."
70+ exit 1
71+ fi
72+ fi
73+ fi
74+fi
75+
76+# pipewire priority, fallback pulseaudio
77+pw-play "$sound_file" || pa-play "$sound_file"
+104-0scripts/SwitchKeyboardLayout.sh
@@ -0,0 +1,104 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
3+# This is for changing kb_layouts. Set kb_layouts in $settings_file
4+
5+layout_file="$HOME/.cache/kb_layout"
6+settings_file="$HOME/.config/hypr/UserConfigs/UserSettings.conf"
7+notif_icon="$HOME/.config/swaync/images/ja.png"
8+
9+# Refined ignore list with patterns or specific device names
10+ignore_patterns=(
11+ "--(avrcp)"
12+ "Bluetooth Speaker"
13+ "Other Device
14+ Name"
15+ )
16+
17+
18+# Create layout file with default layout if it does not exist
19+if [ ! -f "$layout_file" ]; then
20+ echo "Creating layout file..."
21+ default_layout=$(grep 'kb_layout = ' "$settings_file" | cut -d '=' -f 2 | tr -d '[:space:]' | cut -d ',' -f 1 2>/dev/null)
22+ default_layout=${default_layout:-"us"} # Default to 'us' layout
23+ echo "$default_layout" > "$layout_file"
24+ echo "Default layout set to $default_layout"
25+fi
26+
27+current_layout=$(cat "$layout_file")
28+echo "Current layout: $current_layout"
29+
30+# Read available layouts from settings file
31+if [ -f "$settings_file" ]; then
32+ kb_layout_line=$(grep 'kb_layout = ' "$settings_file" | cut -d '=' -f 2)
33+ # Remove leading and trailing spaces around each layout
34+ kb_layout_line=$(echo "$kb_layout_line" | tr -d '[:space:]')
35+ IFS=',' read -r -a layout_mapping <<< "$kb_layout_line"
36+else
37+ echo "Settings file not found!"
38+ exit 1
39+fi
40+
41+layout_count=${#layout_mapping[@]}
42+echo "Number of layouts: $layout_count"
43+
44+# Find current layout index and calculate next layout
45+for ((i = 0; i < layout_count; i++)); do
46+ if [ "$current_layout" == "${layout_mapping[i]}" ]; then
47+ current_index=$i
48+ break
49+ fi
50+done
51+
52+next_index=$(( (current_index + 1) % layout_count ))
53+new_layout="${layout_mapping[next_index]}"
54+echo "Next layout: $new_layout"
55+
56+# Function to get keyboard names
57+get_keyboard_names() {
58+ hyprctl devices -j | jq -r '.keyboards[].name'
59+}
60+
61+# Function to check if a device matches any ignore pattern
62+is_ignored() {
63+ local device_name=$1
64+ for pattern in "${ignore_patterns[@]}"; do
65+ if [[ "$device_name" == *"$pattern"* ]]; then
66+ return 0 # Device matches ignore pattern
67+ fi
68+ done
69+ return 1 # Device does not match any ignore pattern
70+}
71+
72+# Function to change keyboard layout
73+change_layout() {
74+ local error_found=false
75+
76+ while read -r name; do
77+ if is_ignored "$name"; then
78+ echo "Skipping ignored device: $name"
79+ continue
80+ fi
81+
82+ echo "Switching layout for $name to $new_layout..."
83+ hyprctl switchxkblayout "$name" "$next_index"
84+ if [ $? -ne 0 ]; then
85+ echo "Error while switching layout for $name." >&2
86+ error_found=true
87+ fi
88+ done <<< "$(get_keyboard_names)"
89+
90+ $error_found && return 1
91+ return 0
92+}
93+
94+# Execute layout change and notify
95+if ! change_layout; then
96+ notify-send -u low -t 2000 'kb_layout' " Error:" " Layout change failed"
97+ echo "Layout change failed." >&2
98+ exit 1
99+else
100+ notify-send -u low -i "$notif_icon" " kb_layout: $new_layout"
101+ echo "Layout change notification sent."
102+fi
103+
104+echo "$new_layout" > "$layout_file"
+32-0scripts/TouchPad.sh
@@ -0,0 +1,32 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
3+# For disabling touchpad.
4+# Edit the Touchpad_Device on ~/.config/hypr/UserConfigs/Laptops.conf according to your system
5+# use hyprctl devices to get your system touchpad device name
6+# source https://github.com/hyprwm/Hyprland/discussions/4283?sort=new#discussioncomment-8648109
7+
8+notif="$HOME/.config/swaync/images/ja.png"
9+
10+export STATUS_FILE="$XDG_RUNTIME_DIR/touchpad.status"
11+
12+enable_touchpad() {
13+ printf "true" >"$STATUS_FILE"
14+ notify-send -u low -i $notif " Enabling" " touchpad"
15+ hyprctl keyword '$TOUCHPAD_ENABLED' "true" -r
16+}
17+
18+disable_touchpad() {
19+ printf "false" >"$STATUS_FILE"
20+ notify-send -u low -i $notif " Disabling" " touchpad"
21+ hyprctl keyword '$TOUCHPAD_ENABLED' "false" -r
22+}
23+
24+if ! [ -f "$STATUS_FILE" ]; then
25+ enable_touchpad
26+else
27+ if [ $(cat "$STATUS_FILE") = "true" ]; then
28+ disable_touchpad
29+ elif [ $(cat "$STATUS_FILE") = "false" ]; then
30+ enable_touchpad
31+ fi
32+fi
+33-0scripts/UptimeNixOS.sh
@@ -0,0 +1,33 @@
1+#!/usr/bin/env bash
2+# Script parses /proc/uptime to get the system uptime
3+# and prints it in a human-readable format
4+# This is a workaround for system where `uptime` command is taken from coreutils
5+# where `uptime -p` is not supported
6+
7+if [[ -r /proc/uptime ]]; then
8+ s=$(< /proc/uptime)
9+ s=${s/.*}
10+else
11+ echo "Error UptimeNixOS.sh: Uptime could not be determined." >&2
12+ exit 1
13+fi
14+
15+d="$((s / 60 / 60 / 24)) days"
16+h="$((s / 60 / 60 % 24)) hours"
17+m="$((s / 60 % 60)) minutes"
18+
19+# Remove plural if < 2.
20+((${d/ *} == 1)) && d=${d/s}
21+((${h/ *} == 1)) && h=${h/s}
22+((${m/ *} == 1)) && m=${m/s}
23+
24+# Hide empty fields.
25+((${d/ *} == 0)) && unset d
26+((${h/ *} == 0)) && unset h
27+((${m/ *} == 0)) && unset m
28+
29+uptime=${d:+$d, }${h:+$h, }$m
30+uptime=${uptime%', '}
31+uptime=${uptime:-$s seconds}
32+
33+echo "up $uptime"
+143-0scripts/Volume.sh
@@ -0,0 +1,143 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
3+# Scripts for volume controls for audio and mic
4+
5+iDIR="$HOME/.config/swaync/icons"
6+sDIR="$HOME/.config/hypr/scripts"
7+
8+# Get Volume
9+get_volume() {
10+ volume=$(pamixer --get-volume)
11+ if [[ "$volume" -eq "0" ]]; then
12+ echo "Muted"
13+ else
14+ echo "$volume %"
15+ fi
16+}
17+
18+# Get icons
19+get_icon() {
20+ current=$(get_volume)
21+ if [[ "$current" == "Muted" ]]; then
22+ echo "$iDIR/volume-mute.png"
23+ elif [[ "${current%\%}" -le 30 ]]; then
24+ echo "$iDIR/volume-low.png"
25+ elif [[ "${current%\%}" -le 60 ]]; then
26+ echo "$iDIR/volume-mid.png"
27+ else
28+ echo "$iDIR/volume-high.png"
29+ fi
30+}
31+
32+# Notify
33+notify_user() {
34+ if [[ "$(get_volume)" == "Muted" ]]; then
35+ notify-send -e -h string:x-canonical-private-synchronous:volume_notif -u low -i "$(get_icon)" " Volume:" " Muted"
36+ else
37+ notify-send -e -h int:value:"$(get_volume | sed 's/%//')" -h string:x-canonical-private-synchronous:volume_notif -u low -i "$(get_icon)" " Volume Level:" " $(get_volume)" &&
38+ "$sDIR/Sounds.sh" --volume
39+ fi
40+}
41+
42+# Increase Volume
43+inc_volume() {
44+ if [ "$(pamixer --get-mute)" == "true" ]; then
45+ toggle_mute
46+ else
47+ pamixer -i 5 --allow-boost --set-limit 150 && notify_user
48+ fi
49+}
50+
51+# Decrease Volume
52+dec_volume() {
53+ if [ "$(pamixer --get-mute)" == "true" ]; then
54+ toggle_mute
55+ else
56+ pamixer -d 5 && notify_user
57+ fi
58+}
59+
60+# Toggle Mute
61+toggle_mute() {
62+ if [ "$(pamixer --get-mute)" == "false" ]; then
63+ pamixer -m && notify-send -e -u low -i "$iDIR/volume-mute.png" " Mute"
64+ elif [ "$(pamixer --get-mute)" == "true" ]; then
65+ pamixer -u && notify-send -e -u low -i "$(get_icon)" " Volume:" " Switched ON"
66+ fi
67+}
68+
69+# Toggle Mic
70+toggle_mic() {
71+ if [ "$(pamixer --default-source --get-mute)" == "false" ]; then
72+ pamixer --default-source -m && notify-send -e -u low -i "$iDIR/microphone-mute.png" " Microphone:" " Switched OFF"
73+ elif [ "$(pamixer --default-source --get-mute)" == "true" ]; then
74+ pamixer -u --default-source u && notify-send -e -u low -i "$iDIR/microphone.png" " Microphone:" " Switched ON"
75+ fi
76+}
77+# Get Mic Icon
78+get_mic_icon() {
79+ current=$(pamixer --default-source --get-volume)
80+ if [[ "$current" -eq "0" ]]; then
81+ echo "$iDIR/microphone-mute.png"
82+ else
83+ echo "$iDIR/microphone.png"
84+ fi
85+}
86+
87+# Get Microphone Volume
88+get_mic_volume() {
89+ volume=$(pamixer --default-source --get-volume)
90+ if [[ "$volume" -eq "0" ]]; then
91+ echo "Muted"
92+ else
93+ echo "$volume %"
94+ fi
95+}
96+
97+# Notify for Microphone
98+notify_mic_user() {
99+ volume=$(get_mic_volume)
100+ icon=$(get_mic_icon)
101+ notify-send -e -h int:value:"$volume" -h "string:x-canonical-private-synchronous:volume_notif" -u low -i "$icon" " Mic Level:" " $volume"
102+}
103+
104+# Increase MIC Volume
105+inc_mic_volume() {
106+ if [ "$(pamixer --default-source --get-mute)" == "true" ]; then
107+ toggle_mic
108+ else
109+ pamixer --default-source -i 5 && notify_mic_user
110+ fi
111+}
112+
113+# Decrease MIC Volume
114+dec_mic_volume() {
115+ if [ "$(pamixer --default-source --get-mute)" == "true" ]; then
116+ toggle-mic
117+ else
118+ pamixer --default-source -d 5 && notify_mic_user
119+ fi
120+}
121+
122+# Execute accordingly
123+if [[ "$1" == "--get" ]]; then
124+ get_volume
125+elif [[ "$1" == "--inc" ]]; then
126+ inc_volume
127+elif [[ "$1" == "--dec" ]]; then
128+ dec_volume
129+elif [[ "$1" == "--toggle" ]]; then
130+ toggle_mute
131+elif [[ "$1" == "--toggle-mic" ]]; then
132+ toggle_mic
133+elif [[ "$1" == "--get-icon" ]]; then
134+ get_icon
135+elif [[ "$1" == "--get-mic-icon" ]]; then
136+ get_mic_icon
137+elif [[ "$1" == "--mic-inc" ]]; then
138+ inc_mic_volume
139+elif [[ "$1" == "--mic-dec" ]]; then
140+ dec_mic_volume
141+else
142+ get_volume
143+fi
+39-0scripts/WallustSwww.sh
@@ -0,0 +1,39 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
3+# Wallust Colors for current wallpaper
4+
5+# Define the path to the swww cache directory
6+cache_dir="$HOME/.cache/swww/"
7+
8+# Get a list of monitor outputs
9+monitor_outputs=($(ls "$cache_dir"))
10+
11+# Initialize a flag to determine if the ln command was executed
12+ln_success=false
13+
14+# Get current focused monitor
15+current_monitor=$(hyprctl monitors | awk '/^Monitor/{name=$2} /focused: yes/{print name}')
16+echo $current_monitor
17+# Construct the full path to the cache file
18+cache_file="$cache_dir$current_monitor"
19+echo $cache_file
20+# Check if the cache file exists for the current monitor output
21+if [ -f "$cache_file" ]; then
22+ # Get the wallpaper path from the cache file
23+ wallpaper_path=$(grep -v 'Lanczos3' "$cache_file" | head -n 1)
24+ echo $wallpaper_path
25+ # symlink the wallpaper to the location Rofi can access
26+ if ln -sf "$wallpaper_path" "$HOME/.config/rofi/.current_wallpaper"; then
27+ ln_success=true # Set the flag to true upon successful execution
28+ fi
29+ # copy the wallpaper for wallpaper effects
30+ cp -r "$wallpaper_path" "$HOME/.config/hypr/wallpaper_effects/.wallpaper_current"
31+fi
32+
33+# Check the flag before executing further commands
34+if [ "$ln_success" = true ]; then
35+ # execute wallust
36+ echo 'about to execute wallust'
37+ # execute wallust skipping tty and terminal changes
38+ wallust run "$wallpaper_path" -s &
39+fi
+42-0scripts/WaybarCava.sh
@@ -0,0 +1,42 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
3+# Not my own work. This was added through Github PR. Credit to original author
4+
5+#----- Optimized bars animation without much CPU usage increase --------
6+bar="▁▂▃▄▅▆▇█"
7+dict="s/;//g"
8+
9+# Calculate the length of the bar outside the loop
10+bar_length=${#bar}
11+
12+# Create dictionary to replace char with bar
13+for ((i = 0; i < bar_length; i++)); do
14+ dict+=";s/$i/${bar:$i:1}/g"
15+done
16+
17+# Create cava config
18+config_file="/tmp/bar_cava_config"
19+cat >"$config_file" <<EOF
20+[general]
21+# Older systems show significant CPU use with default framerate
22+# Setting maximum framerate to 30
23+# You can increase the value if you wish
24+framerate = 30
25+bars = 10
26+
27+[input]
28+method = pulse
29+source = auto
30+
31+[output]
32+method = raw
33+raw_target = /dev/stdout
34+data_format = ascii
35+ascii_max_range = 7
36+EOF
37+
38+# Kill cava if it's already running
39+pkill -f "cava -p $config_file"
40+
41+# Read stdout from cava and perform substitution in a single sed command
42+cava -p "$config_file" | sed -u "$dict"
+55-0scripts/WaybarLayout.sh
@@ -0,0 +1,55 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
3+# Script for waybar layout or configs
4+
5+IFS=$'\n\t'
6+
7+# Define directories
8+waybar_layouts="$HOME/.config/waybar/configs"
9+waybar_config="$HOME/.config/waybar/config"
10+SCRIPTSDIR="$HOME/.config/hypr/scripts"
11+rofi_config="$HOME/.config/rofi/config-waybar-layout.rasi"
12+msg=' 🎌 NOTE: Some waybar LAYOUT NOT fully compatible with some STYLES'
13+
14+# Function to display menu options
15+menu() {
16+ options=()
17+ while IFS= read -r file; do
18+ options+=("$(basename "$file")")
19+ done < <(find -L "$waybar_layouts" -maxdepth 1 -type f -exec basename {} \; | sort )
20+
21+ printf '%s\n' "${options[@]}"
22+}
23+
24+# Apply selected configuration
25+apply_config() {
26+ ln -sf "$waybar_layouts/$1" "$waybar_config"
27+ "${SCRIPTSDIR}/Refresh.sh" &
28+}
29+
30+# Main function
31+main() {
32+ choice=$(menu | rofi -i -dmenu -config "$rofi_config" -mesg "$msg")
33+
34+ if [[ -z "$choice" ]]; then
35+ echo "No option selected. Exiting."
36+ exit 0
37+ fi
38+
39+ case $choice in
40+ "no panel")
41+ pgrep -x "waybar" && pkill waybar || true
42+ ;;
43+ *)
44+ apply_config "$choice"
45+ ;;
46+ esac
47+}
48+
49+# Kill Rofi if already running before execution
50+if pgrep -x "rofi" >/dev/null; then
51+ pkill rofi
52+ #exit 0
53+fi
54+
55+main
+41-0scripts/WaybarScripts.sh
@@ -0,0 +1,41 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
3+# This file used on waybar modules sourcing defaults set in $HOME/.config/hypr/UserConfigs/01-UserDefaults.conf
4+
5+# Define the path to the config file
6+config_file=$HOME/.config/hypr/UserConfigs/01-UserDefaults.conf
7+
8+# Check if the config file exists
9+if [[ ! -f "$config_file" ]]; then
10+ echo "Error: Configuration file not found!"
11+ exit 1
12+fi
13+
14+# Process the config file in memory, removing the $ and fixing spaces
15+config_content=$(sed 's/\$//g' "$config_file" | sed 's/ = /=/')
16+
17+# Source the modified content directly from the variable
18+eval "$config_content"
19+
20+# Check if $term is set correctly
21+if [[ -z "$term" ]]; then
22+ echo "Error: \$term is not set in the configuration file!"
23+ exit 1
24+fi
25+
26+# Execute accordingly based on the passed argument
27+if [[ "$1" == "--btop" ]]; then
28+ $term --title btop sh -c 'btop'
29+elif [[ "$1" == "--nvtop" ]]; then
30+ $term --title nvtop sh -c 'nvtop'
31+elif [[ "$1" == "--nmtui" ]]; then
32+ $term nmtui
33+elif [[ "$1" == "--term" ]]; then
34+ $term &
35+else
36+ echo "Usage: $0 [--btop | --nvtop | --nmtui | --term]"
37+ echo "--btop : Open btop in a new term"
38+ echo "--nvtop : Open nvtop in a new term"
39+ echo "--nmtui : Open nmtui in a new term"
40+ echo "--term : Launch a term window"
41+fi
+50-0scripts/WaybarStyles.sh
@@ -0,0 +1,50 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
3+# Script for waybar styles
4+
5+IFS=$'\n\t'
6+
7+# Define directories
8+waybar_styles="$HOME/.config/waybar/style"
9+waybar_style="$HOME/.config/waybar/style.css"
10+SCRIPTSDIR="$HOME/.config/hypr/scripts"
11+rofi_config="$HOME/.config/rofi/config-waybar-style.rasi"
12+msg=' 🎌 NOTE: Some waybar STYLES NOT fully compatible with some LAYOUTS'
13+
14+# Function to display menu options
15+menu() {
16+ options=()
17+ while IFS= read -r file; do
18+ if [ -f "$waybar_styles/$file" ]; then
19+ options+=("$(basename "$file" .css)")
20+ fi
21+ done < <(find -L "$waybar_styles" -maxdepth 1 -type f -name '*.css' -exec basename {} \; | sort )
22+
23+ printf '%s\n' "${options[@]}"
24+}
25+
26+# Apply selected style
27+apply_style() {
28+ ln -sf "$waybar_styles/$1.css" "$waybar_style"
29+ "${SCRIPTSDIR}/Refresh.sh" &
30+}
31+
32+# Main function
33+main() {
34+ choice=$(menu | rofi -i -dmenu -config "$rofi_config" -mesg "$msg")
35+
36+ if [[ -z "$choice" ]]; then
37+ echo "No option selected. Exiting."
38+ exit 0
39+ fi
40+
41+ apply_style "$choice"
42+}
43+
44+# Kill Rofi if already running before execution
45+if pgrep -x "rofi" >/dev/null; then
46+ pkill rofi
47+ #exit 0
48+fi
49+
50+main
+57-0scripts/Wlogout.sh
@@ -0,0 +1,57 @@
1+#!/bin/bash
2+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
3+# wlogout (Power, Screen Lock, Suspend, etc)
4+
5+# Set variables for parameters. First numbers corresponts to Monitor Resolution
6+# i.e 2160 means 2160p
7+A_2160=600
8+B_2160=600
9+A_1600=400
10+B_1600=400
11+A_1440=400
12+B_1440=400
13+A_1080=200
14+B_1080=200
15+A_720=50
16+B_720=50
17+
18+# Check if wlogout is already running
19+if pgrep -x "wlogout" > /dev/null; then
20+ pkill -x "wlogout"
21+ exit 0
22+fi
23+
24+# Detect monitor resolution and scaling factor
25+resolution=$(hyprctl -j monitors | jq -r '.[] | select(.focused==true) | .height / .scale' | awk -F'.' '{print $1}')
26+hypr_scale=$(hyprctl -j monitors | jq -r '.[] | select(.focused==true) | .scale')
27+
28+# Set parameters based on screen resolution and scaling factor
29+if ((resolution >= 2160)); then
30+ T_val=$(awk "BEGIN {printf \"%.0f\", $A_2160 * 2160 * $hypr_scale / $resolution}")
31+ B_val=$(awk "BEGIN {printf \"%.0f\", $B_2160 * 2160 * $hypr_scale / $resolution}")
32+ echo "Setting parameters for resolution >= 4k"
33+ wlogout --protocol layer-shell -b 6 -T $T_val -B $B_val &
34+elif ((resolution >= 1600 && resolution < 2160)); then
35+ T_val=$(awk "BEGIN {printf \"%.0f\", $A_1600 * 1600 * $hypr_scale / $resolution}")
36+ B_val=$(awk "BEGIN {printf \"%.0f\", $B_1600 * 1600 * $hypr_scale / $resolution}")
37+ echo "Setting parameters for resolution >= 2.5k and < 4k"
38+ wlogout --protocol layer-shell -b 6 -T $T_val -B $B_val &
39+elif ((resolution >= 1440 && resolution < 1600)); then
40+ T_val=$(awk "BEGIN {printf \"%.0f\", $A_1440 * 1440 * $hypr_scale / $resolution}")
41+ B_val=$(awk "BEGIN {printf \"%.0f\", $B_1440 * 1440 * $hypr_scale / $resolution}")
42+ echo "Setting parameters for resolution >= 2k and < 2.5k"
43+ wlogout --protocol layer-shell -b 6 -T $T_val -B $B_val &
44+elif ((resolution >= 1080 && resolution < 1440)); then
45+ T_val=$(awk "BEGIN {printf \"%.0f\", $A_1080 * 1080 * $hypr_scale / $resolution}")
46+ B_val=$(awk "BEGIN {printf \"%.0f\", $B_1080 * 1080 * $hypr_scale / $resolution}")
47+ echo "Setting parameters for resolution >= 1080p and < 2k"
48+ wlogout --protocol layer-shell -b 6 -T $T_val -B $B_val &
49+elif ((resolution >= 720 && resolution < 1080)); then
50+ T_val=$(awk "BEGIN {printf \"%.0f\", $A_720 * 720 * $hypr_scale / $resolution}")
51+ B_val=$(awk "BEGIN {printf \"%.0f\", $B_720 * 720 * $hypr_scale / $resolution}")
52+ echo "Setting parameters for resolution >= 720p and < 1080p"
53+ wlogout --protocol layer-shell -b 3 -T $T_val -B $B_val &
54+else
55+ echo "Setting default parameters"
56+ wlogout &
57+fi
+5-0v2.3.15
@@ -0,0 +1,5 @@
1+### https://github.com/JaKooLit ###
2+## https://github.com/JaKooLit/Hyprland-Dots
3+## This is to have a reference of which version would be
4+
5+## note that this will always be higher than the released versions
+24-0wallust/wallust-hyprland.conf
@@ -0,0 +1,24 @@
1+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */
2+# /* wallust template - colors-hyprland */
3+
4+$background = rgb(0a0a0f) # Dark background
5+$foreground = rgb(f2f2f2) # Light text
6+
7+$color0 = rgb(1a1a1f) # Base UI dark gray
8+$color1 = rgb(ff003c) # Neon red/pink (headline accent)
9+$color2 = rgb(c73e1d) # Deep orange-red
10+$color3 = rgb(ffa500) # Gold-orange accent
11+$color4 = rgb(222235) # Deep background purple
12+$color5 = rgb(d61e92) # Vibrant magenta-pink
13+$color6 = rgb(4cc2e0) # Cool cyan
14+$color7 = rgb(f3ecf5) # Soft gray highlight
15+
16+$color8 = rgb(2c2c2c) # Dim gray (alt background)
17+$color9 = rgb(ff3355) # Light neon red
18+$color10 = rgb(333366) # Warm soft orange
19+$color11 = rgb(c73e1d) # Deep orange-red
20+$color12 = rgb(ee8855) # Muted purple-blue
21+$color13 = rgb(ee8855) # Warm soft orange
22+$color14 = rgb(f8eafc) # Pale rose
23+$color15 = rgb(f3ecf5) # Light gray-white
24+
+33-0workspaces.conf
@@ -0,0 +1,33 @@
1+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
2+
3+# *********************************************************** #
4+#
5+# NOTE: This will be overwritten by NWG-Displays
6+# once you use and click apply.
7+#
8+# *********************************************************** #
9+
10+# You can set workspace rules to achieve workspace-specific behaviors.
11+# For instance, you can define a workspace where all windows are drawn without borders or gaps.
12+
13+# https://wiki.hyprland.org/Configuring/Workspace-Rules/
14+
15+# Assigning workspace to a certain monitor. Below are just examples
16+# workspace = 1, monitor:eDP-1
17+# workspace = 2, monitor:eDP-1
18+# workspace = 3, monitor:eDP-1
19+# workspace = 4, monitor:eDP-1
20+# workspace = 5, monitor:DP-2
21+# workspace = 6, monitor:DP-2
22+# workspace = 7, monitor:DP-2
23+# workspace = 8, monitor:DP-2
24+
25+
26+# example rules (from wiki)
27+# workspace = 3, rounding:false, decorate:false
28+# workspace = name:coding, rounding:false, decorate:false, gapsin:0, gapsout:0, border:false, decorate:false, monitor:DP-1
29+# workspace = 8,bordersize:8
30+# workspace = name:Hello, monitor:DP-1, default:true
31+# workspace = name:gaming, monitor:desc:Chimei Innolux Corporation 0x150C, default:true
32+# workspace = 5, on-created-empty:[float] firefox
33+# workspace = special:scratchpad, on-created-empty:foot