cum puter the second cumming

This commit is contained in:
zastian@mrthoddata.com
2025-10-22 20:51:39 +01:00
parent e55659e082
commit c48cce4a4a
5 changed files with 226 additions and 166 deletions

View File

@@ -15,10 +15,10 @@ let
oreo = pkgs.callPackage ./personalPKGS/oreo.nix { }; oreo = pkgs.callPackage ./personalPKGS/oreo.nix { };
# Window manager toggles # Window manager toggles
wmAll = window_manager == "all"; wmAll = window_manager == "all";
useRiver = window_manager == "river" || wmAll; useRiver = window_manager == "river" || wmAll;
useNiri = window_manager == "niri" || wmAll; useNiri = window_manager == "niri" || wmAll;
useHypr = window_manager == "hyprland" || wmAll; useHypr = window_manager == "hyprland" || wmAll;
in in
{ {
############################################################################## ##############################################################################
@@ -41,7 +41,10 @@ in
# Nix settings # Nix settings
############################################################################## ##############################################################################
nix.settings = { nix.settings = {
experimental-features = [ "nix-command" "flakes" ]; experimental-features = [
"nix-command"
"flakes"
];
build-dir = "/nix/var/nix/builds"; build-dir = "/nix/var/nix/builds";
auto-optimise-store = true; auto-optimise-store = true;
}; };
@@ -66,7 +69,7 @@ in
# Niri (via overlay) # Niri (via overlay)
nixpkgs.overlays = [ inputs.niri.overlays.niri ]; nixpkgs.overlays = [ inputs.niri.overlays.niri ];
programs.niri = { programs.niri = {
enable = useNiri; enable = useNiri;
package = pkgs.niri-stable; # Only needed if not provided by the overlay package = pkgs.niri-stable; # Only needed if not provided by the overlay
}; };
@@ -155,7 +158,15 @@ in
isNormalUser = true; isNormalUser = true;
shell = pkgs.zsh; shell = pkgs.zsh;
createHome = true; createHome = true;
extraGroups = [ "wheel" "networkmanager" "video" "render" "docker" "libvirt" "input" ]; extraGroups = [
"wheel"
"networkmanager"
"video"
"render"
"docker"
"libvirt"
"input"
];
packages = with pkgs; [ ]; packages = with pkgs; [ ];
}; };
@@ -163,11 +174,22 @@ in
isNormalUser = true; isNormalUser = true;
shell = pkgs.zsh; shell = pkgs.zsh;
createHome = true; createHome = true;
extraGroups = [ "wheel" "networkmanager" "video" "render" "docker" "libvirt" "input" ]; extraGroups = [
"wheel"
"networkmanager"
"video"
"render"
"docker"
"libvirt"
"input"
];
packages = with pkgs; [ ]; packages = with pkgs; [ ];
}; };
groups.libvirtd.members = [ "mrfluffy" "work" ]; groups.libvirtd.members = [
"mrfluffy"
"work"
];
}; };
############################################################################## ##############################################################################
@@ -177,7 +199,7 @@ in
extraSpecialArgs = { inherit inputs window_manager systemName; }; extraSpecialArgs = { inherit inputs window_manager systemName; };
users = { users = {
mrfluffy = import ./home/mrfluffy.nix; mrfluffy = import ./home/mrfluffy.nix;
work = import ./home/work.nix; work = import ./home/work.nix;
}; };
}; };

View File

@@ -12,22 +12,24 @@ let
hypr-package = inputs.hyprland.packages.${pkgs.system}.hyprland; hypr-package = inputs.hyprland.packages.${pkgs.system}.hyprland;
hypr-portal = inputs.hyprland.packages.${pkgs.system}.xdg-desktop-portal-hyprland; hypr-portal = inputs.hyprland.packages.${pkgs.system}.xdg-desktop-portal-hyprland;
hypr-split = inputs.hyprland-hyprsplit.packages.${pkgs.system}.split-monitor-workspaces; hypr-split = inputs.hyprland-hyprsplit.packages.${pkgs.system}.split-monitor-workspaces;
mod = "Alt"; hyprscrolling = inputs.hyprland-plugins.packages.${pkgs.system}.hyprscrolling;
terminal = "footclient"; mod = "Alt";
fileManager = "dolphin"; terminal = "footclient";
runner = "${lib.getExe caelestia-cli} shell drawers toggle launcher"; fileManager = "dolphin";
runner = "${lib.getExe caelestia-cli} shell drawers toggle launcher";
# runner = "anyrun"; # runner = "anyrun";
browser = "zen-beta"; browser = "zen-beta";
editor = "emacsclient -c"; editor = "emacsclient -c";
in in
{ {
wayland.windowManager.hyprland = { wayland.windowManager.hyprland = {
enable = window_manager == "hyprland" || window_manager == "all"; enable = window_manager == "hyprland" || window_manager == "all";
package = hypr-package; package = hypr-package;
portalPackage = hypr-portal; portalPackage = hypr-portal;
plugins = [ plugins = [
#pkgs.hyprlandPlugins.hyprsplit #pkgs.hyprlandPlugins.hyprsplit
hypr-split hypr-split
hyprscrolling
]; ];
settings = { settings = {
@@ -48,34 +50,34 @@ in
monitorv2 = monitorv2 =
[ ] [ ]
++ lib.optional (systemName == "laptop") { ++ lib.optional (systemName == "laptop") {
output = "eDP-1"; output = "eDP-1";
mode = "1920x1080@59.99700"; mode = "1920x1080@59.99700";
scale = 1; scale = 1;
position = "0x0"; position = "0x0";
} }
++ lib.optional (systemName == "pc") { ++ lib.optional (systemName == "pc") {
output = "DP-1"; output = "DP-1";
mode = "2560x1440@239.97"; mode = "2560x1440@239.97";
position = "2560x0";#"1440x750"; # Corrected from 2569x0 for seamless alignment position = "2560x0"; # "1440x750"; # Corrected from 2569x0 for seamless alignment
scale = 1; scale = 1;
#supports_wide_color = 1; #supports_wide_color = 1;
bitdepth = 10; bitdepth = 10;
cm = "hdr"; cm = "hdr";
supports_hdr = true; supports_hdr = true;
supports_wide_color = true; supports_wide_color = true;
sdr_min_luminance = 0; # For true black on OLED sdr_min_luminance = 0; # For true black on OLED
sdr_max_luminance = 275; # Matches typical SDR brightness sdr_max_luminance = 275; # Matches typical SDR brightness
min_luminance = 0; min_luminance = 0;
max_luminance = 1000; # HDR peak max_luminance = 1000; # HDR peak
max_avg_luminance = 400; # Average frame luminance max_avg_luminance = 400; # Average frame luminance
sdrbrightness = 1.2; # Slight boost to avoid washed out look sdrbrightness = 1.2; # Slight boost to avoid washed out look
sdrsaturation = 1.0; sdrsaturation = 1.0;
#transform = 2; # Uncomment if needed #transform = 2; # Uncomment if needed
} }
++ lib.optional (systemName == "pc") { ++ lib.optional (systemName == "pc") {
output = "DP-2"; output = "DP-2";
mode = "2560x1440@144"; mode = "2560x1440@144";
scale = 1; scale = 1;
position = "0x0"; position = "0x0";
transform = 0; transform = 0;
}; };
@@ -86,20 +88,19 @@ in
# Autostart necessary processes (like notifications daemons, status bars, etc.) # Autostart necessary processes (like notifications daemons, status bars, etc.)
# Or execute your favorite apps at launch like this: # Or execute your favorite apps at launch like this:
exec-once = exec-once = [
[ # "waybar"
# "waybar" # "quickshell"
# "quickshell" "${pkgs.polkit_gnome}/libexec/polkit-gnome-authentication-agent-1"
"${pkgs.polkit_gnome}/libexec/polkit-gnome-authentication-agent-1" "fcitx5 -d"
"fcitx5 -d" "foot -s"
"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"
"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"
"dbus-update-activation-environment --systemd --all" ]
] ++ lib.optionals (config.home.username == "work") [
++ lib.optionals (config.home.username == "work") [ "thunderbird"
"thunderbird" "sleep 10 && emacsclient -c --frame-parameters='((name . \"work\"))' $HOME/Documents/work/README.org"
"sleep 10 && emacsclient -c --frame-parameters='((name . \"work\"))' $HOME/Documents/work/README.org" ];
];
# ++ lib.optional (systemName == "laptop") # ++ lib.optional (systemName == "laptop")
# "swaybg -o eDP-1 -i ${../assets/Wallpapers/138.png}" # "swaybg -o eDP-1 -i ${../assets/Wallpapers/138.png}"
# #
@@ -112,9 +113,14 @@ in
plugin = { plugin = {
split-monitor-workspaces = { split-monitor-workspaces = {
count = 10; count = 10;
penable_persistent_workspaces = 1; 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/
# https://wiki.hyprland.org/Configuring/Variables/#general # https://wiki.hyprland.org/Configuring/Variables/#general
general = { general = {
gaps_in = 5; gaps_in = 5;
gaps_out = 10; gaps_out = 10;
border_size = 2; border_size = 2;
# "col.active_border" = "rgba(33ccffee) rgba(00ff99ee) 45deg"; # "col.active_border" = "rgba(33ccffee) rgba(00ff99ee) 45deg";
# "col.inactive_border" = "rgba(595959aa)"; # "col.inactive_border" = "rgba(595959aa)";
resize_on_border = false; # enable resizing windows by clicking and dragging on borders and gaps 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 allow_tearing = false; # see https://wiki.hyprland.org/Configuring/Tearing/ before enabling
layout = "dwindle"; layout = "scrolling"; #"dwindle";
}; };
render = { render = {
cm_enabled = true; # turn on the CM pipeline (requires Hyprland restart) cm_enabled = true; # turn on the CM pipeline (requires Hyprland restart)
cm_fs_passthrough = 2; # passthrough only for HDR content (safer than 1) cm_fs_passthrough = 2; # passthrough only for HDR content (safer than 1)
cm_auto_hdr = 1; # auto-switch monitor to HDR for fullscreen apps cm_auto_hdr = 1; # auto-switch monitor to HDR for fullscreen apps
send_content_type = true; # helps auto HDR on some displays 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 # cm_fs_passthrough = 1; # optional: keep your existing line; you can replace with 2 as above
}; };
# https://wiki.hyprland.org/Configuring/Variables/#decoration # https://wiki.hyprland.org/Configuring/Variables/#decoration
decoration = { decoration = {
rounding = 10; rounding = 10;
rounding_power = 2; rounding_power = 2;
active_opacity = 1.0; active_opacity = 1.0;
inactive_opacity= 1.0; inactive_opacity = 1.0;
shadow = { shadow = {
enabled = true; enabled = true;
range = 4; range = 4;
render_power = 3; render_power = 3;
# color = "rgba(1a1a1aee)"; # color = "rgba(1a1a1aee)";
}; };
# https://wiki.hyprland.org/Configuring/Variables/#blur # https://wiki.hyprland.org/Configuring/Variables/#blur
blur = { blur = {
enabled = false; enabled = false;
size = 3; size = 3;
passes = 1; passes = 1;
vibrancy = 0.1696; vibrancy = 0.1696;
}; };
}; };
@@ -212,9 +218,9 @@ in
# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more # See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
dwindle = { dwindle = {
pseudotile = true; # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds pseudotile = true; # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds
preserve_split= true; # You probably want this preserve_split = true; # You probably want this
force_split = 2; force_split = 2;
}; };
# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more # See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
@@ -229,9 +235,9 @@ in
# https://wiki.hyprland.org/Configuring/Variables/#misc # https://wiki.hyprland.org/Configuring/Variables/#misc
misc = { misc = {
force_default_wallpaper = -1; # Set to 0 or 1 to disable the anime mascot wallpapers 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. :( disable_hyprland_logo = true; # If true disables the random hyprland logo / anime girl background. :(
enable_swallow = true; enable_swallow = true;
swallow_regex = "footclient"; swallow_regex = "footclient";
}; };
# https://wiki.hyprland.org/Configuring/Variables/#input # https://wiki.hyprland.org/Configuring/Variables/#input
@@ -240,14 +246,14 @@ in
(lib.mkIf (systemName == "laptop") "ie") (lib.mkIf (systemName == "laptop") "ie")
(lib.mkIf (systemName == "pc") "us") (lib.mkIf (systemName == "pc") "us")
]; ];
repeat_rate = 40; repeat_rate = 40;
repeat_delay = 500; repeat_delay = 500;
# kb_variant = # kb_variant =
# kb_model = # kb_model =
# kb_options = # kb_options =
# kb_rules = # kb_rules =
follow_mouse = 1; follow_mouse = 1;
sensitivity = 0; # -1.0 - 1.0, 0 means no modification. sensitivity = 0; # -1.0 - 1.0, 0 means no modification.
touchpad = { touchpad = {
natural_scroll = false; natural_scroll = false;
@@ -263,7 +269,7 @@ in
# Example per-device config # Example per-device config
# See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs # See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs
device = { device = {
name = "epic-mouse-v1"; name = "epic-mouse-v1";
sensitivity = -0.5; sensitivity = -0.5;
}; };
@@ -301,10 +307,19 @@ in
"${mod}, L, layoutmsg, move +col" "${mod}, L, layoutmsg, move +col"
# Move window # Move window
"${mod} SHIFT, H, movewindow, l" #"${mod} SHIFT, H, movewindow, l"
"${mod} SHIFT, L, movewindow, r" #"${mod} SHIFT, L, movewindow, r"
"${mod} SHIFT, K, movewindow, u" #"${mod} SHIFT, K, movewindow, u"
"${mod} SHIFT, J, movewindow, d" #"${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) # Workspaces (switch)
"${mod}, 1, split-workspace, 1 " "${mod}, 1, split-workspace, 1 "

141
flake.lock generated
View File

@@ -10,11 +10,11 @@
"systems": "systems" "systems": "systems"
}, },
"locked": { "locked": {
"lastModified": 1760083914, "lastModified": 1760996210,
"narHash": "sha256-I9IMO9d+z71oeqOz6gOre07tK2Du3vp2FcOW3x4FDXw=", "narHash": "sha256-SfdiJqxGVOlFw29START445DlujG+HTIwqs297vTRLA=",
"owner": "Kirottu", "owner": "Kirottu",
"repo": "anyrun", "repo": "anyrun",
"rev": "3050aa30e25957bbb9e1ac91a44d3979eccadf59", "rev": "c21e7f64af9c04858223a77c71e3936fc936afaa",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -64,11 +64,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1759499898, "lastModified": 1760101617,
"narHash": "sha256-UNzYHLWfkSzLHDep5Ckb5tXc0fdxwPIrT+MY4kpQttM=", "narHash": "sha256-8jf/3ZCi+B7zYpIyV04+3wm72BD7Z801IlOzsOACR7I=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "aquamarine", "repo": "aquamarine",
"rev": "655e067f96fd44b3f5685e17f566b0e4d535d798", "rev": "1826a9923881320306231b1c2090379ebf9fa4f8",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -232,11 +232,11 @@
"quickshell": "quickshell" "quickshell": "quickshell"
}, },
"locked": { "locked": {
"lastModified": 1760837100, "lastModified": 1761036034,
"narHash": "sha256-B4iL67pRKARIPnZGnlV19axKjjW+UfNP1wnlPbxUM6M=", "narHash": "sha256-IVF2YZqatz5QoD63gKBKTVESHc1a87KgntVv53CTXv4=",
"owner": "caelestia-dots", "owner": "caelestia-dots",
"repo": "shell", "repo": "shell",
"rev": "84343dde62f99590cd9e21694065cf70d96d9869", "rev": "58ac60c47c9ea44665ea0e7814562a6933721aaf",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -275,11 +275,11 @@
"nixpkgs": "nixpkgs_2" "nixpkgs": "nixpkgs_2"
}, },
"locked": { "locked": {
"lastModified": 1760839810, "lastModified": 1760926060,
"narHash": "sha256-tkkDKpKOyeHJz+4czv80zCYTs4r2/DC2/c6AS1RbCP8=", "narHash": "sha256-pEkdpaEPWkyhWFweRfxkTtofL6QTzKBK4zSn+AZ6dnI=",
"owner": "caelestia-dots", "owner": "caelestia-dots",
"repo": "cli", "repo": "cli",
"rev": "dcca082ee6a1e2358db81386c116049505af91d1", "rev": "d0f8a06e5959326f04ccf535b1b5c8bd15f6aa89",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -496,11 +496,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1760885310, "lastModified": 1761005073,
"narHash": "sha256-0Vv3NuZo9iNhXOlN5hWcvYR+hWmq3rgi8UoLtIOadBc=", "narHash": "sha256-r6qbieh8iC1q1eCaWv15f4UIp8SeGffwswhNSA1Qk3s=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "90af98a2fc3a4fb4c4eb9836e8b18fc7beaef2db", "rev": "84e1adb0cdd13f5f29886091c7234365e12b1e7f",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -554,11 +554,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1759490292, "lastModified": 1760445448,
"narHash": "sha256-T6iWzDOXp8Wv0KQOCTHpBcmAOdHJ6zc/l9xaztW6Ivc=", "narHash": "sha256-fXGjL6dw31FPFRrmIemzGiNSlfvEJTJNsmadZi+qNhI=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprgraphics", "repo": "hyprgraphics",
"rev": "9431db625cd9bb66ac55525479dce694101d6d7a", "rev": "50fb9f069219f338a11cf0bcccb9e58357d67757",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -643,11 +643,11 @@
"xdph": "xdph" "xdph": "xdph"
}, },
"locked": { "locked": {
"lastModified": 1760874867, "lastModified": 1760959370,
"narHash": "sha256-w2JettCPyqWKMYoJRCTc5/nsSvGrSV9jG4kbn8Q0pZk=", "narHash": "sha256-tqZWNOZg9P1gpWiHNGtZTTb/UK+2E5LFmFpfEIArTqE=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "Hyprland", "repo": "Hyprland",
"rev": "59ff7b2f891d06f4097128faf7027a3863542167", "rev": "46dab01bcc47b2e29f36cd4d35d04091e4134a67",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -677,6 +677,36 @@
"type": "github" "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": { "hyprland-protocols": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
@@ -689,11 +719,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1749046714, "lastModified": 1759610243,
"narHash": "sha256-kymV5FMnddYGI+UjwIw8ceDjdeg7ToDVjbHCvUlhn14=", "narHash": "sha256-+KEVnKBe8wz+a6dTLq8YDcF3UrhQElwsYJaVaHXJtoI=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprland-protocols", "repo": "hyprland-protocols",
"rev": "613878cb6f459c5e323aaafe1e6f388ac8a36330", "rev": "bd153e76f751f150a09328dbdeb5e4fab9d23622",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -1187,11 +1217,11 @@
"xwayland-satellite-unstable": "xwayland-satellite-unstable" "xwayland-satellite-unstable": "xwayland-satellite-unstable"
}, },
"locked": { "locked": {
"lastModified": 1760884961, "lastModified": 1760950171,
"narHash": "sha256-IOM46J+S74ylMy3kA0uwaF/0t9GuGMey0fHXmH9d1kM=", "narHash": "sha256-E2ySTu/oK7cYBdAI3tlGP9zVjF4mZgWJ1OZInBCMb00=",
"owner": "sodiboo", "owner": "sodiboo",
"repo": "niri-flake", "repo": "niri-flake",
"rev": "8d48b5f42febe4824a79ad54095e48cef10961ad", "rev": "f851a923137c0a54719412146fd63d24b3214e60",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -1220,11 +1250,11 @@
"niri-unstable": { "niri-unstable": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1760878897, "lastModified": 1760940149,
"narHash": "sha256-Z0vhMbpT0OTO6EftHVXfU6rzh8pz6ITly/J8lQgjp2o=", "narHash": "sha256-KbM47vD6E0cx+v4jYQZ8mD5N186AKm2CQlyh34TW58U=",
"owner": "YaLTeR", "owner": "YaLTeR",
"repo": "niri", "repo": "niri",
"rev": "c8eea8ee9ddf795da8cb356599f17e2dc7cfea20", "rev": "b3245b81a6ed8edfaf5388a74d2e0a23c24941e5",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -1398,11 +1428,11 @@
}, },
"nixpkgs-stable": { "nixpkgs-stable": {
"locked": { "locked": {
"lastModified": 1760725957, "lastModified": 1760862643,
"narHash": "sha256-tdoIhL/NlER290HfSjOkgi4jfmjeqmqrzgnmiMtGepE=", "narHash": "sha256-PXwG0TM7Ek87DNx4LbGWuD93PbFeKAJs4FfALtp7Wo0=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "81b927b14b7b3988334d5282ef9cba802e193fe1", "rev": "33c6dca0c0cb31d6addcd34e90a63ad61826b28c",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -1414,11 +1444,11 @@
}, },
"nixpkgs_2": { "nixpkgs_2": {
"locked": { "locked": {
"lastModified": 1760524057, "lastModified": 1760878510,
"narHash": "sha256-EVAqOteLBFmd7pKkb0+FIUyzTF61VKi7YmvP1tw4nEw=", "narHash": "sha256-K5Osef2qexezUfs0alLvZ7nQFTGS9DL2oTVsIXsqLgs=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "544961dfcce86422ba200ed9a0b00dd4b1486ec5", "rev": "5e2a59a5b1a82f89f2c7e598302a9cacebb72a67",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -1430,11 +1460,11 @@
}, },
"nixpkgs_3": { "nixpkgs_3": {
"locked": { "locked": {
"lastModified": 1760524057, "lastModified": 1760878510,
"narHash": "sha256-EVAqOteLBFmd7pKkb0+FIUyzTF61VKi7YmvP1tw4nEw=", "narHash": "sha256-K5Osef2qexezUfs0alLvZ7nQFTGS9DL2oTVsIXsqLgs=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "544961dfcce86422ba200ed9a0b00dd4b1486ec5", "rev": "5e2a59a5b1a82f89f2c7e598302a9cacebb72a67",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -1462,11 +1492,11 @@
}, },
"nixpkgs_5": { "nixpkgs_5": {
"locked": { "locked": {
"lastModified": 1760657701, "lastModified": 1760878510,
"narHash": "sha256-JDJbIATPJ6GvvaoiwYqPVUF15QUOaQU4TcGGfulCaEs=", "narHash": "sha256-K5Osef2qexezUfs0alLvZ7nQFTGS9DL2oTVsIXsqLgs=",
"owner": "NixOS", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "dede83c7b078ec2bed3fcdd8e04fca448e7ebf26", "rev": "5e2a59a5b1a82f89f2c7e598302a9cacebb72a67",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -1527,11 +1557,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1758108966, "lastModified": 1760663237,
"narHash": "sha256-ytw7ROXaWZ7OfwHrQ9xvjpUWeGVm86pwnEd1QhzawIo=", "narHash": "sha256-BflA6U4AM1bzuRMR8QqzPXqh8sWVCNDzOdsxXEguJIc=",
"owner": "cachix", "owner": "cachix",
"repo": "git-hooks.nix", "repo": "git-hooks.nix",
"rev": "54df955a695a84cd47d4a43e08e1feaf90b1fd9b", "rev": "ca5b894d3e3e151ffc1db040b6ce4dcc75d31c37",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -1631,6 +1661,7 @@
"home-manager": "home-manager", "home-manager": "home-manager",
"hyprland": "hyprland", "hyprland": "hyprland",
"hyprland-hyprsplit": "hyprland-hyprsplit", "hyprland-hyprsplit": "hyprland-hyprsplit",
"hyprland-plugins": "hyprland-plugins",
"hyprlauncher": "hyprlauncher", "hyprlauncher": "hyprlauncher",
"niri": "niri", "niri": "niri",
"nix-alien": "nix-alien", "nix-alien": "nix-alien",
@@ -1663,11 +1694,11 @@
"tinted-zed": "tinted-zed" "tinted-zed": "tinted-zed"
}, },
"locked": { "locked": {
"lastModified": 1760472212, "lastModified": 1761028816,
"narHash": "sha256-4C3I/ssFsq8EgaUmZP0xv5V7RV0oCHgL/Rx+MUkuE+E=", "narHash": "sha256-s1XiIeJHpODVWfzsPaK9e21iz1dQSCU3H4/1OxOsyps=",
"owner": "nix-community", "owner": "nix-community",
"repo": "stylix", "repo": "stylix",
"rev": "8d008296a1b3be9b57ad570f7acea00dd2fc92db", "rev": "b81dc0a385443099e7d231fe6275189e32c3b760",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -1860,11 +1891,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1755354946, "lastModified": 1760713634,
"narHash": "sha256-zdov5f/GcoLQc9qYIS1dUTqtJMeDqmBmo59PAxze6e4=", "narHash": "sha256-5HXelmz2x/uO26lvW7MudnadbAfoBnve4tRBiDVLtOM=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "xdg-desktop-portal-hyprland", "repo": "xdg-desktop-portal-hyprland",
"rev": "a10726d6a8d0ef1a0c645378f983b6278c42eaa0", "rev": "753bbbdf6a052994da94062e5b753288cef28dfb",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -1916,11 +1947,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1760843785, "lastModified": 1761020606,
"narHash": "sha256-lp6xctqGBNKZ3pmRlALX1puVG7EKQa4xAq+2leThDKw=", "narHash": "sha256-XdDpTJHjFqZJ3ss6xzTWYyi3PEObX2fs+kW0Wg/rNDk=",
"owner": "0xc000022070", "owner": "0xc000022070",
"repo": "zen-browser-flake", "repo": "zen-browser-flake",
"rev": "a36f9da8a234b59dd5fc4484e37dadae2aa75b80", "rev": "637cb6167da4dbf8ef7f5a50e69933c4f9796095",
"type": "github" "type": "github"
}, },
"original": { "original": {

View File

@@ -43,6 +43,10 @@
url = "github:hyprwm/Hyprland"; url = "github:hyprwm/Hyprland";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
}; };
hyprland-plugins = {
url = "github:hyprwm/hyprland-plugins";
inputs.hyprland.follows = "hyprland";
};
hyprland-hyprsplit = { hyprland-hyprsplit = {
url = "github:Duckonaut/split-monitor-workspaces"; url = "github:Duckonaut/split-monitor-workspaces";
inputs.hyprland.follows = "hyprland"; inputs.hyprland.follows = "hyprland";

View File

@@ -1,27 +1,11 @@
{ { config, lib, pkgs, systemName, ... }:
config,
lib,
pkgs,
systemName,
...
}:
{ {
console.keyMap = "ie"; console.keyMap = "ie";
i18n = lib.mkMerge [ i18n = lib.mkMerge [
(lib.mkIf (systemName == "laptop") { (lib.mkIf (systemName == "laptop") {
defaultLocale = "en_IE.UTF-8"; defaultLocale = "en_IE.UTF-8";
inputMethod = {
enable = true;
type = "fcitx5";
fcitx5 = {
waylandFrontend = true;
addons = with pkgs; [
fcitx5-mozc
fcitx5-gtk
];
};
};
extraLocaleSettings = { extraLocaleSettings = {
LC_ADDRESS = "en_IE.UTF-8"; LC_ADDRESS = "en_IE.UTF-8";
LC_IDENTIFICATION = "en_IE.UTF-8"; LC_IDENTIFICATION = "en_IE.UTF-8";
@@ -34,16 +18,20 @@
LC_TIME = "en_IE.UTF-8"; LC_TIME = "en_IE.UTF-8";
}; };
}) })
(lib.mkIf (systemName == "pc") { (lib.mkIf (systemName == "pc") {
inputMethod = { defaultLocale = "en_US.UTF-8";
enable = true; extraLocaleSettings = {
type = "fcitx5"; LC_ADDRESS = "en_US.UTF-8";
fcitx5.addons = with pkgs; [ LC_IDENTIFICATION = "en_US.UTF-8";
fcitx5-mozc LC_MEASUREMENT = "en_US.UTF-8";
fcitx5-gtk 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";
}; };
}) })
]; ];
} }