diff --git a/flake.nix b/flake.nix index b356df3..9d4d09a 100644 --- a/flake.nix +++ b/flake.nix @@ -2,11 +2,16 @@ inputs = { nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; base16.url = "github:SenchoPens/base16.nix"; + home-manager.url = "github:nix-community/home-manager"; tt-schemes = { url = "github:tinted-theming/schemes"; flake = false; }; - home-manager.url = "github:nix-community/home-manager"; + tt-terminal = { + url = "github:tinted-theming/tinted-terminal"; + flake = false; + }; + }; outputs = { @@ -31,7 +36,7 @@ home-manager.useGlobalPkgs = true; home-manager.useUserPackages = true; home-manager.extraSpecialArgs = { inherit inputs; }; - home-manager.users.lucy.imports = [ + imports = [ ./modules/programs/emacs.nix ./modules/programs/niri.nix ./modules/home.nix diff --git a/modules/programs/foot.nix b/modules/programs/foot.nix new file mode 100644 index 0000000..b9ffe1f --- /dev/null +++ b/modules/programs/foot.nix @@ -0,0 +1,16 @@ +{ + pkgs, + config, + inputs, + ... +}: +{ + home-manager.users.lucy.programs.foot = { + enable = true; + settings = { + + } + ++ builtins.readFile (config.scheme inputs.tt-terminal); + }; + +} diff --git a/modules/programs/niri.nix b/modules/programs/niri.nix index f3a528a..646c905 100644 --- a/modules/programs/niri.nix +++ b/modules/programs/niri.nix @@ -1,8 +1,154 @@ -{ pkgs, config, ...}: -let - c = config.scheme.withHashtag; -in +{ pkgs, config, ... }: { - home-manager.users.lucy.wayland.windowManager.niri = {}; + home-manager.users.lucy.wayland.windowManager.niri = { + enable = true; + extraConfig = '' + prefer-no-csd + 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="0%" + } + + 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 + } + + + layout { + gaps 16 + center-focused-column "never" + default-column-width { proportion 0.5; } + focus-ring { + off + } + border { + width 4 + active-color "${config.scheme.withHashtag.base0D}" + inactive-color "${config.scheme.withHashtag.base02}" + } + } + spawn-at-startup "qs" + screenshot-path null + animations {} + window-rule { + geometry-corner-radius 16 + clip-to-geometry true + } + + binds { + Mod+return { spawn "foot"; } + 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+Ctrl+1 { move-column-to-workspace 1; } + Mod+Ctrl+2 { move-column-to-workspace 2; } + Mod+Ctrl+3 { move-column-to-workspace 3; } + Mod+Ctrl+4 { move-column-to-workspace 4; } + Mod+Ctrl+5 { move-column-to-workspace 5; } + Mod+Ctrl+6 { move-column-to-workspace 6; } + Mod+Ctrl+7 { move-column-to-workspace 7; } + Mod+Ctrl+8 { move-column-to-workspace 8; } + Mod+Ctrl+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; } + } + ''; + + }; }