diff --git a/modules/default.nix b/modules/default.nix index ca23e72..fee437d 100644 --- a/modules/default.nix +++ b/modules/default.nix @@ -23,11 +23,18 @@ in [ { config.dualBoot = true; + config.networking.hostName = "nerv"; } ] ++ mods; }; flake.nixosConfigurations.seele = inputs.nixpkgs.lib.nixosSystem { - modules = mods; + modules = [ + { + config.networking.hostName = "seele"; + } + ] + ++ mods; + }; } diff --git a/modules/home/programs/niri.nix b/modules/home/programs/niri.nix index d833d3f..1feea0c 100644 --- a/modules/home/programs/niri.nix +++ b/modules/home/programs/niri.nix @@ -2,183 +2,162 @@ flake.homeModules.niri = { wayland.windowManager.niri = { enable = true; - settings = { - prefer-no-csd = { }; - hotkey-overlay.skip-at-startup = { }; - input = { - keyboard.xkb.layout = "eu"; - touchpad = { - tap = { }; - natural-scroll = { }; - }; - mouse = { - accel-speed = -0.4; - accel-profile = "flat"; - }; - focus-follows-mouse._props.max-scroll-amount = "20%"; - }; - spawn-at-startup = [ "qs" ]; - screenshot-path = null; - animations = { }; - layout = { - gaps = 16; - center-focused-column = "never"; - default-column-width._children = [ { proportion = 0.6; } ]; - }; - binds = { - "Mod+Return".spawn-sh = "ghostty +new-window"; - "Mod+space".spawn = [ "fuzzel" ]; - "Mod+e".spawn = [ "nautilus" ]; - "XF86AudioRaiseVolume" = { - _props.allow-when-locked = true; - spawn-sh = "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.1+ -l 1.0"; - }; - "XF86AudioLowerVolume" = { - _props.allow-when-locked = true; - spawn-sh = "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.1-"; - }; - "XF86AudioMute" = { - _props.allow-when-locked = true; - spawn-sh = "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"; - }; - "XF86AudioMicMute" = { - _props.allow-when-locked = true; - spawn-sh = "wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle"; - }; - "XF86AudioPlay" = { - _props.allow-when-locked = true; - spawn-sh = "playerctl play-pause"; - }; - "XF86AudioStop" = { - _props.allow-when-locked = true; - spawn-sh = "playerctl stop"; - }; - "XF86AudioPrev" = { - _props.allow-when-locked = true; - spawn-sh = "playerctl previous"; - }; - "XF86AudioNext" = { - _props.allow-when-locked = true; - spawn-sh = "playerctl next"; - }; - "XF86MonBrightnessUp" = { - _props.allow-when-locked = true; - spawn = [ - "brightnessctl" - "--class=backlight" - "set" - "+10%" - ]; - }; - "XF86MonBrightnessDown" = { - _props.allow-when-locked = true; - spawn = [ - "brightnessctl" - "--class=backlight" - "set" - "10%-" - ]; - }; - "Mod+O" = { - _props.repeat = false; - toggle-overview = { }; - }; - "Mod+Q" = { - _props.repeat = false; - close-window = { }; - }; - "Mod+Left".focus-column-left = { }; - "Mod+Down".focus-window-down = { }; - "Mod+Up".focus-window-up = { }; - "Mod+Right".focus-column-right = { }; - "Mod+H".focus-column-left = { }; - "Mod+J".focus-window-down = { }; - "Mod+K".focus-window-up = { }; - "Mod+L".focus-column-right = { }; - "Mod+Ctrl+Left".move-column-left = { }; - "Mod+Ctrl+Down".move-window-down = { }; - "Mod+Ctrl+Up".move-window-up = { }; - "Mod+Ctrl+Right".move-column-right = { }; - "Mod+Ctrl+H".move-column-left = { }; - "Mod+Ctrl+J".move-window-down = { }; - "Mod+Ctrl+K".move-window-up = { }; - "Mod+Ctrl+L".move-column-right = { }; - "Mod+comma".focus-monitor-left = { }; - "Mod+period".focus-monitor-right = { }; - "Mod+Shift+comma".move-column-to-monitor-left = { }; - "Mod+Shift+period".move-column-to-monitor-right = { }; - "Mod+Shift+WheelScrollDown".focus-column-right = { }; - "Mod+Shift+WheelScrollUp".focus-column-left = { }; - "Mod+1".focus-workspace = 1; - "Mod+2".focus-workspace = 2; - "Mod+3".focus-workspace = 3; - "Mod+4".focus-workspace = 4; - "Mod+5".focus-workspace = 5; - "Mod+6".focus-workspace = 6; - "Mod+7".focus-workspace = 7; - "Mod+8".focus-workspace = 8; - "Mod+9".focus-workspace = 9; - "Mod+Shift+1".move-column-to-workspace = 1; - "Mod+Shift+2".move-column-to-workspace = 2; - "Mod+Shift+3".move-column-to-workspace = 3; - "Mod+Shift+4".move-column-to-workspace = 4; - "Mod+Shift+5".move-column-to-workspace = 5; - "Mod+Shift+6".move-column-to-workspace = 6; - "Mod+Shift+7".move-column-to-workspace = 7; - "Mod+Shift+8".move-column-to-workspace = 8; - "Mod+Shift+9".move-column-to-workspace = 9; - "Mod+BracketLeft".consume-or-expel-window-left = { }; - "Mod+BracketRight".consume-or-expel-window-right = { }; - "Mod+F".maximize-column = { }; - "Mod+Minus".set-column-width = "-10%"; - "Mod+Equal".set-column-width = "+10%"; - "Mod+V".toggle-window-floating = { }; - "Mod+Shift+S".screenshot = { }; - "Alt+Shift+S".screenshot-screen = { }; - "Alt+Ctrl+S".screenshot-window = { }; - "Mod+Shift+q".quit = { }; - }; - _children = [ - { - output = { - _args = [ "PNP(BNQ) BenQ EX2710Q K6R04023019" ]; - mode = "2560x1440@165.002"; - scale = 1; - transform = "normal"; - position._props = { - x = 1920; - y = 0; - }; - position._props = { - x = 1920; - y = 0; - }; - }; - } - { - output = { - _args = [ "Dell Inc. DELL P2317H 9KFDW6C533DB" ]; - position._props = { - x = 0; - y = 0; - }; - }; - } - { - output = { - _args = [ "eDP-1" ]; - scale = 1; - }; - } - { - window-rule._children = [ - { geometry-corner-radius = 16; } - { clip-to-geometry = true; } - ]; - } - ]; - }; + extraConfig = '' + prefer-no-csd + hotkey-overlay { + skip-at-startup + } + environment { + GTK_THEME "adw-gtk3-dark" + XDG_CURRENT_DESKTOP "niri" + XDG_SESSION_TYPE "wayland" + XDG_SESSION_DESKTOP "niri" + QT_QPA_PLATFORM "wayland;xcb" + OZONE_PLATFORM "wayland" + ELECTRON_OZONE_PLATFORM_HINT "auto" + } + cursor { + xcursor-size 24 + xcursor-theme "macOS" + } + input { + keyboard { + xkb { + layout "eu" + } + } + + touchpad { + tap + natural-scroll + + } + + mouse { + accel-speed -0.4 + accel-profile "flat" + } + focus-follows-mouse max-scroll-amount="20%" + + } + + output "PNP(BNQ) BenQ EX2710Q K6R04023019" { + mode "2560x1440@165.002" + scale 1 + transform "normal" + position x=1920 y=0 + } + output "Dell Inc. DELL P2317H 9KFDW6C533DB" { + position x=0 y=0 + } + + output "eDP-1" { + scale 1 + } + + + layout { + gaps 16 + center-focused-column "never" + default-column-width { proportion 0.6; } + focus-ring { + off + } + border { + width 2 + active-color "#ffc87f" + inactive-color "#505050" + } + } + spawn-at-startup "qs" + screenshot-path null + animations {} + window-rule { + geometry-corner-radius 16 + clip-to-geometry true + } + + binds { + Mod+return { spawn-sh "ghostty +new-window"; } + Mod+space { spawn "fuzzel"; } + Mod+e { spawn "nautilus"; } + + XF86AudioRaiseVolume allow-when-locked=true { spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.1+ -l 1.0"; } + XF86AudioLowerVolume allow-when-locked=true { spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.1-"; } + XF86AudioMute allow-when-locked=true { spawn-sh "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"; } + XF86AudioMicMute allow-when-locked=true { spawn-sh "wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle"; } + + XF86AudioPlay allow-when-locked=true { spawn-sh "playerctl play-pause"; } + XF86AudioStop allow-when-locked=true { spawn-sh "playerctl stop"; } + XF86AudioPrev allow-when-locked=true { spawn-sh "playerctl previous"; } + XF86AudioNext allow-when-locked=true { spawn-sh "playerctl next"; } + + XF86MonBrightnessUp allow-when-locked=true { spawn "brightnessctl" "--class=backlight" "set" "+10%"; } + XF86MonBrightnessDown allow-when-locked=true { spawn "brightnessctl" "--class=backlight" "set" "10%-"; } + + Mod+O repeat=false { toggle-overview; } + Mod+Q repeat=false { close-window; } + + Mod+Left { focus-column-left; } + Mod+Down { focus-window-down; } + Mod+Up { focus-window-up; } + Mod+Right { focus-column-right; } + Mod+H { focus-column-left; } + Mod+J { focus-window-down; } + Mod+K { focus-window-up; } + Mod+L { focus-column-right; } + Mod+Ctrl+Left { move-column-left; } + Mod+Ctrl+Down { move-window-down; } + Mod+Ctrl+Up { move-window-up; } + Mod+Ctrl+Right { move-column-right; } + Mod+Ctrl+H { move-column-left; } + Mod+Ctrl+J { move-window-down; } + Mod+Ctrl+K { move-window-up; } + mod+ctrl+l { move-column-right; } + + Mod+comma { focus-monitor-left; } + Mod+period { focus-monitor-right; } + + Mod+Shift+comma { move-column-to-monitor-left; } + Mod+Shift+period { move-column-to-monitor-right; } + + + Mod+Shift+WheelScrollDown { focus-column-right; } + Mod+Shift+WheelScrollUp { focus-column-left; } + Mod+1 { focus-workspace 1; } + Mod+2 { focus-workspace 2; } + Mod+3 { focus-workspace 3; } + Mod+4 { focus-workspace 4; } + Mod+5 { focus-workspace 5; } + Mod+6 { focus-workspace 6; } + Mod+7 { focus-workspace 7; } + Mod+8 { focus-workspace 8; } + Mod+9 { focus-workspace 9; } + Mod+Shift+1 { move-column-to-workspace 1; } + Mod+Shift+2 { move-column-to-workspace 2; } + Mod+Shift+3 { move-column-to-workspace 3; } + Mod+Shift+4 { move-column-to-workspace 4; } + Mod+Shift+5 { move-column-to-workspace 5; } + Mod+Shift+6 { move-column-to-workspace 6; } + Mod+Shift+7 { move-column-to-workspace 7; } + Mod+Shift+8 { move-column-to-workspace 8; } + Mod+Shift+9 { move-column-to-workspace 9; } + + Mod+BracketLeft { consume-or-expel-window-left; } + Mod+BracketRight { consume-or-expel-window-right; } + Mod+F { maximize-column; } + + Mod+Minus { set-column-width "-10%"; } + Mod+Equal { set-column-width "+10%"; } + + Mod+V { toggle-window-floating; } + Mod+Shift+S { screenshot; } + Alt+Shift+S { screenshot-screen; } + Alt+Ctrl+S { screenshot-window; } + Mod+Shift+q { quit; } + } + ''; }; }; } diff --git a/modules/system/core/core.nix b/modules/system/core/core.nix index 5fc22ca..9f8ff35 100644 --- a/modules/system/core/core.nix +++ b/modules/system/core/core.nix @@ -18,6 +18,7 @@ polkit.enable = true; # polkit # polkit.enablePkexecWrapper = true; }; + networking.networkmanager.enable = true; nix.settings.experimental-features = [ "nix-command" "flakes" diff --git a/modules/system/core/packages.nix b/modules/system/core/packages.nix index 4e2b312..7fc0c36 100644 --- a/modules/system/core/packages.nix +++ b/modules/system/core/packages.nix @@ -1,6 +1,7 @@ { ... }: { flake.nixosModules.packages = { pkgs, ... }: { nixpkgs.config.allowUnfree = true; + programs.niri.enable = true; environment.systemPackages = with pkgs; [ stow ufetch