diff --git a/.gitignore b/.gitignore index 4fb2421..5f527e0 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,7 @@ */colors.css */colors.conf backups/ +i3/config +sway/config +waybar/style.css +wofi/style.css diff --git a/background.png b/background.png new file mode 100644 index 0000000..2b416ab Binary files /dev/null and b/background.png differ diff --git a/hypr/base.conf b/hypr/base.conf index fbbf0e7..ae75bae 100644 --- a/hypr/base.conf +++ b/hypr/base.conf @@ -15,7 +15,7 @@ monitor=,preferred,auto,1 $terminal = kitty $fileManager = kitty -e ranger -$menu = hyprlauncher +$menu = wofi --show drun ################### ### CURSOR ### @@ -25,11 +25,6 @@ env = XCURSOR_THEME,Miku Cursor env = XCURSOR_SIZE,48 env = HYPRCURSOR_SIZE,48 -# fcitx5 input method for Pinyin -env = GTK_IM_MODULE,fcitx -env = QT_IM_MODULE,fcitx -env = XMODIFIERS,@im=fcitx - ################# ### AUTOSTART ### ################# @@ -41,8 +36,6 @@ exec-once = dunst exec-once = hypridle exec-once = hyprpaper exec-once = hyprsunset -exec-once = hyprlauncher -exec-once = fcitx5 -d exec-once = waterfox exec-once = waybar # NOTE: ff-theme-util and fix_xcursor are X11-specific; drop or find Wayland equivalents @@ -53,6 +46,12 @@ exec-once = waybar ### ENVIRONMENT VARIABLES ### ############################# +env = XDG_SESSION_TYPE,wayland +# NVIDIA-specific env vars — uncomment if running on nvidia: +# env = LIBVA_DRIVER_NAME,nvidia +# env = GBM_BACKEND,nvidia-drm +# env = __GLX_VENDOR_LIBRARY_NAME,nvidia +# env = WLR_NO_HARDWARE_CURSORS,1 ##################### ### LOOK AND FEEL ### @@ -68,7 +67,7 @@ general { resize_on_border = true allow_tearing = false - layout = master # closest to i3's stacking default; use dwindle for split + layout = dwindle } xwayland { @@ -121,7 +120,7 @@ misc { ############# input { - kb_layout = gb,us + kb_layout = gb kb_options = caps:swapescape,grp:alt_shift_toggle follow_mouse = 1 sensitivity = 0 @@ -140,7 +139,7 @@ bind = $mod, Return, exec, $terminal bind = $mod SHIFT, Q, killactive # Launcher (wofi replaces dmenu) -bind = $mod, D, exec, hyprlauncher +bind = $mod, D, exec, $menu # Pavucontrol bind = $mod CTRL, M, exec, hyprpwcenter @@ -179,6 +178,7 @@ bind = $mod SHIFT, E, exec, hyprshutdown # System mode (replaces i3's $mode_system) # Simple submap equivalent: +bind = $mod, 0, exec, notify-send -t 5000 "System Mode" "(l)ock (s)uspend (h)ibernate\n(r)eboot (Shift+s) shutdown (e)xit\n\nReturn/Escape to cancel" bind = $mod, 0, submap, system submap = system bind = , L, exec, hyprlock @@ -193,7 +193,9 @@ bind = SHIFT, S, exec, systemctl poweroff bind = SHIFT, S, submap, reset bind = , E, exec, hyprshutdown bind = , E, submap, reset +bind = , Return, exec, dunstctl close bind = , Return, submap, reset +bind = , Escape, exec, dunstctl close bind = , Escape, submap, reset submap = reset diff --git a/hypr/hyprland.conf b/hypr/hyprland.conf index 38f29e0..6103ef5 100644 --- a/hypr/hyprland.conf +++ b/hypr/hyprland.conf @@ -25,7 +25,7 @@ monitor=,preferred,auto,1 $terminal = kitty $fileManager = kitty -e ranger -$menu = hyprlauncher +$menu = wofi --show drun ################### ### CURSOR ### @@ -35,11 +35,6 @@ env = XCURSOR_THEME,Miku Cursor env = XCURSOR_SIZE,48 env = HYPRCURSOR_SIZE,48 -# fcitx5 input method for Pinyin -env = GTK_IM_MODULE,fcitx -env = QT_IM_MODULE,fcitx -env = XMODIFIERS,@im=fcitx - ################# ### AUTOSTART ### ################# @@ -51,8 +46,6 @@ exec-once = dunst exec-once = hypridle exec-once = hyprpaper exec-once = hyprsunset -exec-once = hyprlauncher -exec-once = fcitx5 -d exec-once = waterfox exec-once = waybar # NOTE: ff-theme-util and fix_xcursor are X11-specific; drop or find Wayland equivalents @@ -63,6 +56,12 @@ exec-once = waybar ### ENVIRONMENT VARIABLES ### ############################# +env = XDG_SESSION_TYPE,wayland +# NVIDIA-specific env vars — uncomment if running on nvidia: +# env = LIBVA_DRIVER_NAME,nvidia +# env = GBM_BACKEND,nvidia-drm +# env = __GLX_VENDOR_LIBRARY_NAME,nvidia +# env = WLR_NO_HARDWARE_CURSORS,1 ##################### ### LOOK AND FEEL ### @@ -78,12 +77,7 @@ general { resize_on_border = true allow_tearing = false - layout = master # closest to i3's stacking default; use dwindle for split -} - -render { - explicit_sync = true - explicit_sync_kms = true + layout = dwindle } xwayland { @@ -136,7 +130,7 @@ misc { ############# input { - kb_layout = gb,us + kb_layout = gb kb_options = caps:swapescape,grp:alt_shift_toggle follow_mouse = 1 sensitivity = 0 @@ -155,7 +149,7 @@ bind = $mod, Return, exec, $terminal bind = $mod SHIFT, Q, killactive # Launcher (wofi replaces dmenu) -bind = $mod, D, exec, hyprlauncher +bind = $mod, D, exec, $menu # Pavucontrol bind = $mod CTRL, M, exec, hyprpwcenter @@ -194,6 +188,7 @@ bind = $mod SHIFT, E, exec, hyprshutdown # System mode (replaces i3's $mode_system) # Simple submap equivalent: +bind = $mod, 0, exec, notify-send -t 5000 "System Mode" "(l)ock (s)uspend (h)ibernate\n(r)eboot (Shift+s) shutdown (e)xit\n\nReturn/Escape to cancel" bind = $mod, 0, submap, system submap = system bind = , L, exec, hyprlock @@ -208,7 +203,9 @@ bind = SHIFT, S, exec, systemctl poweroff bind = SHIFT, S, submap, reset bind = , E, exec, hyprshutdown bind = , E, submap, reset +bind = , Return, exec, dunstctl close bind = , Return, submap, reset +bind = , Escape, exec, dunstctl close bind = , Escape, submap, reset submap = reset diff --git a/hypr/hyprpaper.conf b/hypr/hyprpaper.conf new file mode 100644 index 0000000..d71de3d --- /dev/null +++ b/hypr/hyprpaper.conf @@ -0,0 +1,3 @@ +preload = ~/scripts/background.png +wallpaper = DP-1,~/scripts/background.png +wallpaper = DP-2,~/scripts/background.png diff --git a/packages.txt b/packages.txt index c0f2645..8ba9837 100644 --- a/packages.txt +++ b/packages.txt @@ -16,12 +16,15 @@ hyprland hyprpaper hypridle hyprlock +hyprsunset +hyprshutdown +hyprpwcenter +hyprlauncher dex polkit-gnome waybar -wofi grim slurp @@ -59,7 +62,11 @@ dunst cliphist inotify-tools -pavucontrol +fcitx5 +fcitx5-chinese-addons +fcitx5-gtk +fcitx5-qt +fcitx5-configtool pipewire pipewire-alsa pipewire-audio diff --git a/waybar/base.css b/waybar/base.css index 1b1ceb3..dc5d031 100644 --- a/waybar/base.css +++ b/waybar/base.css @@ -108,6 +108,21 @@ window#waybar { color: @color_tertiary; } +/* App launcher buttons */ +#custom-steam, +#custom-waterfox, +#custom-discord, +#custom-spotify, +#custom-obsidian { + padding: 0 10px; + color: @color_primary; +} + +#custom-steam { + margin-left: 8px; + border-left: 1px solid @color_tertiary; +} + #tray { padding: 0 8px; border-left: 1px solid @color_tertiary; diff --git a/waybar/config b/waybar/config index b40690d..2961d99 100644 --- a/waybar/config +++ b/waybar/config @@ -4,7 +4,7 @@ "height": 30, "spacing": 0, - "modules-left": ["hyprland/workspaces", "hyprland/submap"], + "modules-left": ["hyprland/workspaces", "hyprland/submap", "custom/steam", "custom/waterfox", "custom/discord", "custom/spotify", "custom/obsidian"], "modules-right": [ "custom/greetings", "custom/history", @@ -111,5 +111,35 @@ "tray": { "spacing": 10 + }, + + "custom/steam": { + "format": "Steam", + "on-click": "steam", + "tooltip-format": "Steam" + }, + + "custom/waterfox": { + "format": "Waterfox", + "on-click": "waterfox", + "tooltip-format": "Waterfox" + }, + + "custom/discord": { + "format": "Discord", + "on-click": "snap run discord", + "tooltip-format": "Discord" + }, + + "custom/spotify": { + "format": "Spotify", + "on-click": "snap run spotify", + "tooltip-format": "Spotify" + }, + + "custom/obsidian": { + "format": "Obsidian", + "on-click": "obsidian", + "tooltip-format": "Obsidian" } } diff --git a/waybar/style.css b/waybar/style.css index a0fe21f..5efa766 100644 --- a/waybar/style.css +++ b/waybar/style.css @@ -118,6 +118,21 @@ window#waybar { color: @color_tertiary; } +/* App launcher buttons */ +#custom-steam, +#custom-waterfox, +#custom-discord, +#custom-spotify, +#custom-obsidian { + padding: 0 10px; + color: @color_primary; +} + +#custom-steam { + margin-left: 8px; + border-left: 1px solid @color_tertiary; +} + #tray { padding: 0 8px; border-left: 1px solid @color_tertiary;