diff --git a/configuration.nix b/configuration.nix index f2edd2c..3c27c69 100755 --- a/configuration.nix +++ b/configuration.nix @@ -15,10 +15,10 @@ let oreo = pkgs.callPackage ./personalPKGS/oreo.nix { }; # Window manager toggles - wmAll = window_manager == "all"; - useRiver = window_manager == "river" || wmAll; - useNiri = window_manager == "niri" || wmAll; - useHypr = window_manager == "hyprland" || wmAll; + wmAll = window_manager == "all"; + useRiver = window_manager == "river" || wmAll; + useNiri = window_manager == "niri" || wmAll; + useHypr = window_manager == "hyprland" || wmAll; in { ############################################################################## @@ -41,7 +41,10 @@ in # Nix settings ############################################################################## nix.settings = { - experimental-features = [ "nix-command" "flakes" ]; + experimental-features = [ + "nix-command" + "flakes" + ]; build-dir = "/nix/var/nix/builds"; auto-optimise-store = true; }; @@ -66,7 +69,7 @@ in # Niri (via overlay) nixpkgs.overlays = [ inputs.niri.overlays.niri ]; programs.niri = { - enable = useNiri; + enable = useNiri; package = pkgs.niri-stable; # Only needed if not provided by the overlay }; @@ -155,7 +158,15 @@ in isNormalUser = true; shell = pkgs.zsh; createHome = true; - extraGroups = [ "wheel" "networkmanager" "video" "render" "docker" "libvirt" "input" ]; + extraGroups = [ + "wheel" + "networkmanager" + "video" + "render" + "docker" + "libvirt" + "input" + ]; packages = with pkgs; [ ]; }; @@ -163,11 +174,22 @@ in isNormalUser = true; shell = pkgs.zsh; createHome = true; - extraGroups = [ "wheel" "networkmanager" "video" "render" "docker" "libvirt" "input" ]; + extraGroups = [ + "wheel" + "networkmanager" + "video" + "render" + "docker" + "libvirt" + "input" + ]; packages = with pkgs; [ ]; }; - groups.libvirtd.members = [ "mrfluffy" "work" ]; + groups.libvirtd.members = [ + "mrfluffy" + "work" + ]; }; ############################################################################## @@ -177,7 +199,7 @@ in extraSpecialArgs = { inherit inputs window_manager systemName; }; users = { mrfluffy = import ./home/mrfluffy.nix; - work = import ./home/work.nix; + work = import ./home/work.nix; }; }; diff --git a/dots/hyprland.nix b/dots/hyprland.nix index 62ef154..1802b3c 100755 --- a/dots/hyprland.nix +++ b/dots/hyprland.nix @@ -12,22 +12,24 @@ let hypr-package = inputs.hyprland.packages.${pkgs.system}.hyprland; hypr-portal = inputs.hyprland.packages.${pkgs.system}.xdg-desktop-portal-hyprland; hypr-split = inputs.hyprland-hyprsplit.packages.${pkgs.system}.split-monitor-workspaces; - mod = "Alt"; - terminal = "footclient"; - fileManager = "dolphin"; - runner = "${lib.getExe caelestia-cli} shell drawers toggle launcher"; + hyprscrolling = inputs.hyprland-plugins.packages.${pkgs.system}.hyprscrolling; + mod = "Alt"; + terminal = "footclient"; + fileManager = "dolphin"; + runner = "${lib.getExe caelestia-cli} shell drawers toggle launcher"; # runner = "anyrun"; - browser = "zen-beta"; - editor = "emacsclient -c"; + browser = "zen-beta"; + editor = "emacsclient -c"; in { wayland.windowManager.hyprland = { - enable = window_manager == "hyprland" || window_manager == "all"; + enable = window_manager == "hyprland" || window_manager == "all"; package = hypr-package; portalPackage = hypr-portal; plugins = [ #pkgs.hyprlandPlugins.hyprsplit hypr-split + hyprscrolling ]; settings = { @@ -48,34 +50,34 @@ in monitorv2 = [ ] ++ lib.optional (systemName == "laptop") { - output = "eDP-1"; - mode = "1920x1080@59.99700"; - scale = 1; + output = "eDP-1"; + mode = "1920x1080@59.99700"; + scale = 1; position = "0x0"; } ++ lib.optional (systemName == "pc") { - output = "DP-1"; - mode = "2560x1440@239.97"; - position = "2560x0";#"1440x750"; # Corrected from 2569x0 for seamless alignment - scale = 1; + output = "DP-1"; + mode = "2560x1440@239.97"; + position = "2560x0"; # "1440x750"; # Corrected from 2569x0 for seamless alignment + scale = 1; #supports_wide_color = 1; - bitdepth = 10; - cm = "hdr"; - supports_hdr = true; + bitdepth = 10; + cm = "hdr"; + supports_hdr = true; supports_wide_color = true; - sdr_min_luminance = 0; # For true black on OLED - sdr_max_luminance = 275; # Matches typical SDR brightness - min_luminance = 0; - max_luminance = 1000; # HDR peak - max_avg_luminance = 400; # Average frame luminance - sdrbrightness = 1.2; # Slight boost to avoid washed out look - sdrsaturation = 1.0; + sdr_min_luminance = 0; # For true black on OLED + sdr_max_luminance = 275; # Matches typical SDR brightness + min_luminance = 0; + max_luminance = 1000; # HDR peak + max_avg_luminance = 400; # Average frame luminance + sdrbrightness = 1.2; # Slight boost to avoid washed out look + sdrsaturation = 1.0; #transform = 2; # Uncomment if needed } ++ lib.optional (systemName == "pc") { - output = "DP-2"; - mode = "2560x1440@144"; - scale = 1; + output = "DP-2"; + mode = "2560x1440@144"; + scale = 1; position = "0x0"; transform = 0; }; @@ -86,20 +88,19 @@ in # Autostart necessary processes (like notifications daemons, status bars, etc.) # Or execute your favorite apps at launch like this: - exec-once = - [ - # "waybar" - # "quickshell" - "${pkgs.polkit_gnome}/libexec/polkit-gnome-authentication-agent-1" - "fcitx5 -d" - "foot -s" - "systemctl --user import-environment DBUS_SESSION_BUS_ADDRESS WAYLAND_DISPLAY XDG_SESSION_TYPE XDG_CURRENT_DESKTOP XDG_SESSION_DESKTOP QT_QPA_PLATFORMTHEME GTK_THEME" - "dbus-update-activation-environment --systemd --all" - ] - ++ lib.optionals (config.home.username == "work") [ - "thunderbird" - "sleep 10 && emacsclient -c --frame-parameters='((name . \"work\"))' $HOME/Documents/work/README.org" - ]; + exec-once = [ + # "waybar" + # "quickshell" + "${pkgs.polkit_gnome}/libexec/polkit-gnome-authentication-agent-1" + "fcitx5 -d" + "foot -s" + "systemctl --user import-environment DBUS_SESSION_BUS_ADDRESS WAYLAND_DISPLAY XDG_SESSION_TYPE XDG_CURRENT_DESKTOP XDG_SESSION_DESKTOP QT_QPA_PLATFORMTHEME GTK_THEME" + "dbus-update-activation-environment --systemd --all" + ] + ++ lib.optionals (config.home.username == "work") [ + "thunderbird" + "sleep 10 && emacsclient -c --frame-parameters='((name . \"work\"))' $HOME/Documents/work/README.org" + ]; # ++ lib.optional (systemName == "laptop") # "swaybg -o eDP-1 -i ${../assets/Wallpapers/138.png}" # @@ -112,9 +113,14 @@ in plugin = { split-monitor-workspaces = { - count = 10; + count = 10; penable_persistent_workspaces = 1; }; + hyprscrolling = { + column_width = 0.9; + follow_focus = true; + fullscreen_on_one_column = true; + }; }; ########################################################################## @@ -133,44 +139,44 @@ in # https://wiki.hyprland.org/Configuring/Variables/ # https://wiki.hyprland.org/Configuring/Variables/#general general = { - gaps_in = 5; - gaps_out = 10; - border_size = 2; + gaps_in = 5; + gaps_out = 10; + border_size = 2; # "col.active_border" = "rgba(33ccffee) rgba(00ff99ee) 45deg"; # "col.inactive_border" = "rgba(595959aa)"; - resize_on_border = false; # enable resizing windows by clicking and dragging on borders and gaps - allow_tearing = false; # see https://wiki.hyprland.org/Configuring/Tearing/ before enabling - layout = "dwindle"; + resize_on_border = false; # enable resizing windows by clicking and dragging on borders and gaps + allow_tearing = false; # see https://wiki.hyprland.org/Configuring/Tearing/ before enabling + layout = "scrolling"; #"dwindle"; }; render = { - cm_enabled = true; # turn on the CM pipeline (requires Hyprland restart) - cm_fs_passthrough = 2; # passthrough only for HDR content (safer than 1) - cm_auto_hdr = 1; # auto-switch monitor to HDR for fullscreen apps - send_content_type = true; # helps auto HDR on some displays + cm_enabled = true; # turn on the CM pipeline (requires Hyprland restart) + cm_fs_passthrough = 2; # passthrough only for HDR content (safer than 1) + cm_auto_hdr = 1; # auto-switch monitor to HDR for fullscreen apps + send_content_type = true; # helps auto HDR on some displays # cm_fs_passthrough = 1; # optional: keep your existing line; you can replace with 2 as above }; # https://wiki.hyprland.org/Configuring/Variables/#decoration decoration = { - rounding = 10; - rounding_power = 2; - active_opacity = 1.0; - inactive_opacity= 1.0; + rounding = 10; + rounding_power = 2; + active_opacity = 1.0; + inactive_opacity = 1.0; shadow = { - enabled = true; - range = 4; + enabled = true; + range = 4; render_power = 3; # color = "rgba(1a1a1aee)"; }; # https://wiki.hyprland.org/Configuring/Variables/#blur blur = { - enabled = false; - size = 3; - passes = 1; - vibrancy = 0.1696; + enabled = false; + size = 3; + passes = 1; + vibrancy = 0.1696; }; }; @@ -212,9 +218,9 @@ in # See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more dwindle = { - pseudotile = true; # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds - preserve_split= true; # You probably want this - force_split = 2; + pseudotile = true; # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds + preserve_split = true; # You probably want this + force_split = 2; }; # See https://wiki.hyprland.org/Configuring/Master-Layout/ for more @@ -229,9 +235,9 @@ in # https://wiki.hyprland.org/Configuring/Variables/#misc misc = { force_default_wallpaper = -1; # Set to 0 or 1 to disable the anime mascot wallpapers - disable_hyprland_logo = true; # If true disables the random hyprland logo / anime girl background. :( - enable_swallow = true; - swallow_regex = "footclient"; + disable_hyprland_logo = true; # If true disables the random hyprland logo / anime girl background. :( + enable_swallow = true; + swallow_regex = "footclient"; }; # https://wiki.hyprland.org/Configuring/Variables/#input @@ -240,14 +246,14 @@ in (lib.mkIf (systemName == "laptop") "ie") (lib.mkIf (systemName == "pc") "us") ]; - repeat_rate = 40; + repeat_rate = 40; repeat_delay = 500; # kb_variant = # kb_model = # kb_options = # kb_rules = follow_mouse = 1; - sensitivity = 0; # -1.0 - 1.0, 0 means no modification. + sensitivity = 0; # -1.0 - 1.0, 0 means no modification. touchpad = { natural_scroll = false; @@ -263,7 +269,7 @@ in # Example per-device config # See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs device = { - name = "epic-mouse-v1"; + name = "epic-mouse-v1"; sensitivity = -0.5; }; @@ -301,10 +307,19 @@ in "${mod}, L, layoutmsg, move +col" # Move window - "${mod} SHIFT, H, movewindow, l" - "${mod} SHIFT, L, movewindow, r" - "${mod} SHIFT, K, movewindow, u" - "${mod} SHIFT, J, movewindow, d" + #"${mod} SHIFT, H, movewindow, l" + #"${mod} SHIFT, L, movewindow, r" + #"${mod} SHIFT, K, movewindow, u" + #"${mod} SHIFT, J, movewindow, d" + "${mod} SHIFT, L, layoutmsg, movewindowto r" + "${mod} SHIFT, H, layoutmsg, movewindowto l" + "${mod} SHIFT, K, layoutmsg, movewindowto u" + "${mod} SHIFT, J, layoutmsg, movewindowto d" + "${mod}, semicolon, layoutmsg, promote" + + #hyperscrolling stuff + "${mod}, period, layoutmsg, move +col" + "${mod}, comma, layoutmsg, move -col" # Workspaces (switch) "${mod}, 1, split-workspace, 1 " diff --git a/flake.lock b/flake.lock index b809a5b..0d9ce64 100644 --- a/flake.lock +++ b/flake.lock @@ -10,11 +10,11 @@ "systems": "systems" }, "locked": { - "lastModified": 1760083914, - "narHash": "sha256-I9IMO9d+z71oeqOz6gOre07tK2Du3vp2FcOW3x4FDXw=", + "lastModified": 1760996210, + "narHash": "sha256-SfdiJqxGVOlFw29START445DlujG+HTIwqs297vTRLA=", "owner": "Kirottu", "repo": "anyrun", - "rev": "3050aa30e25957bbb9e1ac91a44d3979eccadf59", + "rev": "c21e7f64af9c04858223a77c71e3936fc936afaa", "type": "github" }, "original": { @@ -64,11 +64,11 @@ ] }, "locked": { - "lastModified": 1759499898, - "narHash": "sha256-UNzYHLWfkSzLHDep5Ckb5tXc0fdxwPIrT+MY4kpQttM=", + "lastModified": 1760101617, + "narHash": "sha256-8jf/3ZCi+B7zYpIyV04+3wm72BD7Z801IlOzsOACR7I=", "owner": "hyprwm", "repo": "aquamarine", - "rev": "655e067f96fd44b3f5685e17f566b0e4d535d798", + "rev": "1826a9923881320306231b1c2090379ebf9fa4f8", "type": "github" }, "original": { @@ -232,11 +232,11 @@ "quickshell": "quickshell" }, "locked": { - "lastModified": 1760837100, - "narHash": "sha256-B4iL67pRKARIPnZGnlV19axKjjW+UfNP1wnlPbxUM6M=", + "lastModified": 1761036034, + "narHash": "sha256-IVF2YZqatz5QoD63gKBKTVESHc1a87KgntVv53CTXv4=", "owner": "caelestia-dots", "repo": "shell", - "rev": "84343dde62f99590cd9e21694065cf70d96d9869", + "rev": "58ac60c47c9ea44665ea0e7814562a6933721aaf", "type": "github" }, "original": { @@ -275,11 +275,11 @@ "nixpkgs": "nixpkgs_2" }, "locked": { - "lastModified": 1760839810, - "narHash": "sha256-tkkDKpKOyeHJz+4czv80zCYTs4r2/DC2/c6AS1RbCP8=", + "lastModified": 1760926060, + "narHash": "sha256-pEkdpaEPWkyhWFweRfxkTtofL6QTzKBK4zSn+AZ6dnI=", "owner": "caelestia-dots", "repo": "cli", - "rev": "dcca082ee6a1e2358db81386c116049505af91d1", + "rev": "d0f8a06e5959326f04ccf535b1b5c8bd15f6aa89", "type": "github" }, "original": { @@ -496,11 +496,11 @@ ] }, "locked": { - "lastModified": 1760885310, - "narHash": "sha256-0Vv3NuZo9iNhXOlN5hWcvYR+hWmq3rgi8UoLtIOadBc=", + "lastModified": 1761005073, + "narHash": "sha256-r6qbieh8iC1q1eCaWv15f4UIp8SeGffwswhNSA1Qk3s=", "owner": "nix-community", "repo": "home-manager", - "rev": "90af98a2fc3a4fb4c4eb9836e8b18fc7beaef2db", + "rev": "84e1adb0cdd13f5f29886091c7234365e12b1e7f", "type": "github" }, "original": { @@ -554,11 +554,11 @@ ] }, "locked": { - "lastModified": 1759490292, - "narHash": "sha256-T6iWzDOXp8Wv0KQOCTHpBcmAOdHJ6zc/l9xaztW6Ivc=", + "lastModified": 1760445448, + "narHash": "sha256-fXGjL6dw31FPFRrmIemzGiNSlfvEJTJNsmadZi+qNhI=", "owner": "hyprwm", "repo": "hyprgraphics", - "rev": "9431db625cd9bb66ac55525479dce694101d6d7a", + "rev": "50fb9f069219f338a11cf0bcccb9e58357d67757", "type": "github" }, "original": { @@ -643,11 +643,11 @@ "xdph": "xdph" }, "locked": { - "lastModified": 1760874867, - "narHash": "sha256-w2JettCPyqWKMYoJRCTc5/nsSvGrSV9jG4kbn8Q0pZk=", + "lastModified": 1760959370, + "narHash": "sha256-tqZWNOZg9P1gpWiHNGtZTTb/UK+2E5LFmFpfEIArTqE=", "owner": "hyprwm", "repo": "Hyprland", - "rev": "59ff7b2f891d06f4097128faf7027a3863542167", + "rev": "46dab01bcc47b2e29f36cd4d35d04091e4134a67", "type": "github" }, "original": { @@ -677,6 +677,36 @@ "type": "github" } }, + "hyprland-plugins": { + "inputs": { + "hyprland": [ + "hyprland" + ], + "nixpkgs": [ + "hyprland-plugins", + "hyprland", + "nixpkgs" + ], + "systems": [ + "hyprland-plugins", + "hyprland", + "systems" + ] + }, + "locked": { + "lastModified": 1760659005, + "narHash": "sha256-wyS6tXYJuzbwckOeaCoRtT4qIG2UZ0YvSZx7EBNjTV0=", + "owner": "hyprwm", + "repo": "hyprland-plugins", + "rev": "a5a6f93d72d5fb37e78b98c756cfd8b340e71a19", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "hyprland-plugins", + "type": "github" + } + }, "hyprland-protocols": { "inputs": { "nixpkgs": [ @@ -689,11 +719,11 @@ ] }, "locked": { - "lastModified": 1749046714, - "narHash": "sha256-kymV5FMnddYGI+UjwIw8ceDjdeg7ToDVjbHCvUlhn14=", + "lastModified": 1759610243, + "narHash": "sha256-+KEVnKBe8wz+a6dTLq8YDcF3UrhQElwsYJaVaHXJtoI=", "owner": "hyprwm", "repo": "hyprland-protocols", - "rev": "613878cb6f459c5e323aaafe1e6f388ac8a36330", + "rev": "bd153e76f751f150a09328dbdeb5e4fab9d23622", "type": "github" }, "original": { @@ -1187,11 +1217,11 @@ "xwayland-satellite-unstable": "xwayland-satellite-unstable" }, "locked": { - "lastModified": 1760884961, - "narHash": "sha256-IOM46J+S74ylMy3kA0uwaF/0t9GuGMey0fHXmH9d1kM=", + "lastModified": 1760950171, + "narHash": "sha256-E2ySTu/oK7cYBdAI3tlGP9zVjF4mZgWJ1OZInBCMb00=", "owner": "sodiboo", "repo": "niri-flake", - "rev": "8d48b5f42febe4824a79ad54095e48cef10961ad", + "rev": "f851a923137c0a54719412146fd63d24b3214e60", "type": "github" }, "original": { @@ -1220,11 +1250,11 @@ "niri-unstable": { "flake": false, "locked": { - "lastModified": 1760878897, - "narHash": "sha256-Z0vhMbpT0OTO6EftHVXfU6rzh8pz6ITly/J8lQgjp2o=", + "lastModified": 1760940149, + "narHash": "sha256-KbM47vD6E0cx+v4jYQZ8mD5N186AKm2CQlyh34TW58U=", "owner": "YaLTeR", "repo": "niri", - "rev": "c8eea8ee9ddf795da8cb356599f17e2dc7cfea20", + "rev": "b3245b81a6ed8edfaf5388a74d2e0a23c24941e5", "type": "github" }, "original": { @@ -1398,11 +1428,11 @@ }, "nixpkgs-stable": { "locked": { - "lastModified": 1760725957, - "narHash": "sha256-tdoIhL/NlER290HfSjOkgi4jfmjeqmqrzgnmiMtGepE=", + "lastModified": 1760862643, + "narHash": "sha256-PXwG0TM7Ek87DNx4LbGWuD93PbFeKAJs4FfALtp7Wo0=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "81b927b14b7b3988334d5282ef9cba802e193fe1", + "rev": "33c6dca0c0cb31d6addcd34e90a63ad61826b28c", "type": "github" }, "original": { @@ -1414,11 +1444,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1760524057, - "narHash": "sha256-EVAqOteLBFmd7pKkb0+FIUyzTF61VKi7YmvP1tw4nEw=", + "lastModified": 1760878510, + "narHash": "sha256-K5Osef2qexezUfs0alLvZ7nQFTGS9DL2oTVsIXsqLgs=", "owner": "nixos", "repo": "nixpkgs", - "rev": "544961dfcce86422ba200ed9a0b00dd4b1486ec5", + "rev": "5e2a59a5b1a82f89f2c7e598302a9cacebb72a67", "type": "github" }, "original": { @@ -1430,11 +1460,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1760524057, - "narHash": "sha256-EVAqOteLBFmd7pKkb0+FIUyzTF61VKi7YmvP1tw4nEw=", + "lastModified": 1760878510, + "narHash": "sha256-K5Osef2qexezUfs0alLvZ7nQFTGS9DL2oTVsIXsqLgs=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "544961dfcce86422ba200ed9a0b00dd4b1486ec5", + "rev": "5e2a59a5b1a82f89f2c7e598302a9cacebb72a67", "type": "github" }, "original": { @@ -1462,11 +1492,11 @@ }, "nixpkgs_5": { "locked": { - "lastModified": 1760657701, - "narHash": "sha256-JDJbIATPJ6GvvaoiwYqPVUF15QUOaQU4TcGGfulCaEs=", - "owner": "NixOS", + "lastModified": 1760878510, + "narHash": "sha256-K5Osef2qexezUfs0alLvZ7nQFTGS9DL2oTVsIXsqLgs=", + "owner": "nixos", "repo": "nixpkgs", - "rev": "dede83c7b078ec2bed3fcdd8e04fca448e7ebf26", + "rev": "5e2a59a5b1a82f89f2c7e598302a9cacebb72a67", "type": "github" }, "original": { @@ -1527,11 +1557,11 @@ ] }, "locked": { - "lastModified": 1758108966, - "narHash": "sha256-ytw7ROXaWZ7OfwHrQ9xvjpUWeGVm86pwnEd1QhzawIo=", + "lastModified": 1760663237, + "narHash": "sha256-BflA6U4AM1bzuRMR8QqzPXqh8sWVCNDzOdsxXEguJIc=", "owner": "cachix", "repo": "git-hooks.nix", - "rev": "54df955a695a84cd47d4a43e08e1feaf90b1fd9b", + "rev": "ca5b894d3e3e151ffc1db040b6ce4dcc75d31c37", "type": "github" }, "original": { @@ -1631,6 +1661,7 @@ "home-manager": "home-manager", "hyprland": "hyprland", "hyprland-hyprsplit": "hyprland-hyprsplit", + "hyprland-plugins": "hyprland-plugins", "hyprlauncher": "hyprlauncher", "niri": "niri", "nix-alien": "nix-alien", @@ -1663,11 +1694,11 @@ "tinted-zed": "tinted-zed" }, "locked": { - "lastModified": 1760472212, - "narHash": "sha256-4C3I/ssFsq8EgaUmZP0xv5V7RV0oCHgL/Rx+MUkuE+E=", + "lastModified": 1761028816, + "narHash": "sha256-s1XiIeJHpODVWfzsPaK9e21iz1dQSCU3H4/1OxOsyps=", "owner": "nix-community", "repo": "stylix", - "rev": "8d008296a1b3be9b57ad570f7acea00dd2fc92db", + "rev": "b81dc0a385443099e7d231fe6275189e32c3b760", "type": "github" }, "original": { @@ -1860,11 +1891,11 @@ ] }, "locked": { - "lastModified": 1755354946, - "narHash": "sha256-zdov5f/GcoLQc9qYIS1dUTqtJMeDqmBmo59PAxze6e4=", + "lastModified": 1760713634, + "narHash": "sha256-5HXelmz2x/uO26lvW7MudnadbAfoBnve4tRBiDVLtOM=", "owner": "hyprwm", "repo": "xdg-desktop-portal-hyprland", - "rev": "a10726d6a8d0ef1a0c645378f983b6278c42eaa0", + "rev": "753bbbdf6a052994da94062e5b753288cef28dfb", "type": "github" }, "original": { @@ -1916,11 +1947,11 @@ ] }, "locked": { - "lastModified": 1760843785, - "narHash": "sha256-lp6xctqGBNKZ3pmRlALX1puVG7EKQa4xAq+2leThDKw=", + "lastModified": 1761020606, + "narHash": "sha256-XdDpTJHjFqZJ3ss6xzTWYyi3PEObX2fs+kW0Wg/rNDk=", "owner": "0xc000022070", "repo": "zen-browser-flake", - "rev": "a36f9da8a234b59dd5fc4484e37dadae2aa75b80", + "rev": "637cb6167da4dbf8ef7f5a50e69933c4f9796095", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index ce31f46..9cbe59e 100755 --- a/flake.nix +++ b/flake.nix @@ -43,6 +43,10 @@ url = "github:hyprwm/Hyprland"; inputs.nixpkgs.follows = "nixpkgs"; }; + hyprland-plugins = { + url = "github:hyprwm/hyprland-plugins"; + inputs.hyprland.follows = "hyprland"; + }; hyprland-hyprsplit = { url = "github:Duckonaut/split-monitor-workspaces"; inputs.hyprland.follows = "hyprland"; diff --git a/system/inputMethods.nix b/system/inputMethods.nix index 0c4de7e..d3d2c64 100755 --- a/system/inputMethods.nix +++ b/system/inputMethods.nix @@ -1,27 +1,11 @@ -{ - config, - lib, - pkgs, - systemName, - ... -}: +{ config, lib, pkgs, systemName, ... }: { console.keyMap = "ie"; + i18n = lib.mkMerge [ (lib.mkIf (systemName == "laptop") { defaultLocale = "en_IE.UTF-8"; - inputMethod = { - enable = true; - type = "fcitx5"; - fcitx5 = { - waylandFrontend = true; - addons = with pkgs; [ - fcitx5-mozc - fcitx5-gtk - ]; - }; - }; extraLocaleSettings = { LC_ADDRESS = "en_IE.UTF-8"; LC_IDENTIFICATION = "en_IE.UTF-8"; @@ -34,16 +18,20 @@ LC_TIME = "en_IE.UTF-8"; }; }) + (lib.mkIf (systemName == "pc") { - inputMethod = { - enable = true; - type = "fcitx5"; - fcitx5.addons = with pkgs; [ - fcitx5-mozc - fcitx5-gtk - ]; + defaultLocale = "en_US.UTF-8"; + extraLocaleSettings = { + LC_ADDRESS = "en_US.UTF-8"; + LC_IDENTIFICATION = "en_US.UTF-8"; + LC_MEASUREMENT = "en_US.UTF-8"; + LC_MONETARY = "en_US.UTF-8"; + LC_NAME = "en_US.UTF-8"; + LC_NUMERIC = "en_US.UTF-8"; + LC_PAPER = "en_US.UTF-8"; + LC_TELEPHONE = "en_US.UTF-8"; + LC_TIME = "en_US.UTF-8"; }; }) ]; - }