diff --git a/flake.lock b/flake.lock index 6b239b6..6b6eb06 100644 --- a/flake.lock +++ b/flake.lock @@ -21,7 +21,65 @@ "type": "github" } }, + "hyprland": { + "inputs": { + "hyprland-protocols": "hyprland-protocols", + "nixpkgs": "nixpkgs", + "wlroots": "wlroots", + "xdph": "xdph" + }, + "locked": { + "lastModified": 1681652918, + "narHash": "sha256-ybXmD3OhyMG1Yz31lxT8de7aBi2mQmXmzAZ7q49Uvi4=", + "owner": "hyprwm", + "repo": "Hyprland", + "rev": "b05ff89c76b2c9454c76daf2120f4ccb076a018d", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "Hyprland", + "type": "github" + } + }, + "hyprland-protocols": { + "inputs": { + "nixpkgs": [ + "hyprland", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1681065697, + "narHash": "sha256-QPzwwlGKX95tl6ZEshboZbEwwAXww6lNLdVYd6T9Mrc=", + "owner": "hyprwm", + "repo": "hyprland-protocols", + "rev": "4d29e48433270a2af06b8bc711ca1fe5109746cd", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "hyprland-protocols", + "type": "github" + } + }, "nixpkgs": { + "locked": { + "lastModified": 1681557730, + "narHash": "sha256-j2E3639kS3Qop2jQPyqWCdenZNaqIdxfoTvAHnGuAGI=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "85b081528b937df4bfcaee80c3541b58f397df8b", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_2": { "locked": { "lastModified": 1681303793, "narHash": "sha256-JEdQHsYuCfRL2PICHlOiH/2ue3DwoxUX7DJ6zZxZXFk=", @@ -39,7 +97,51 @@ "root": { "inputs": { "home-manager": "home-manager", - "nixpkgs": "nixpkgs" + "hyprland": "hyprland", + "nixpkgs": "nixpkgs_2" + } + }, + "wlroots": { + "flake": false, + "locked": { + "host": "gitlab.freedesktop.org", + "lastModified": 1680810405, + "narHash": "sha256-LmI/4Yp/pOOoI4RxLRx9I90NBsiqdRLVOfbATKlgpkg=", + "owner": "wlroots", + "repo": "wlroots", + "rev": "7abda952d0000b72d240fe1d41457b9288f0b6e5", + "type": "gitlab" + }, + "original": { + "host": "gitlab.freedesktop.org", + "owner": "wlroots", + "repo": "wlroots", + "type": "gitlab" + } + }, + "xdph": { + "inputs": { + "hyprland-protocols": [ + "hyprland", + "hyprland-protocols" + ], + "nixpkgs": [ + "hyprland", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1681127512, + "narHash": "sha256-vklOOhBj5W8fii6yN4L2WY5ZeifBmsq3+mJ2wC1Pk9U=", + "owner": "hyprwm", + "repo": "xdg-desktop-portal-hyprland", + "rev": "04f579377a32781ce57c9cf4ba2a5bcb7f53fa97", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "xdg-desktop-portal-hyprland", + "type": "github" } } }, diff --git a/flake.nix b/flake.nix index 8f9a265..f780d9d 100644 --- a/flake.nix +++ b/flake.nix @@ -3,11 +3,16 @@ inputs = { nixpkgs.url = "nixpkgs/nixos-unstable"; - home-manager.url = "github:nix-community/home-manager/master"; - home-manager.inputs.nixpkgs.follows = "nixpkgs"; + home-manager = { + url = "github:nix-community/home-manager/master"; + inputs.nixpkgs.follows = "nixpkgs"; + }; + hyprland = { + url = "github:hyprwm/Hyprland"; + }; }; - outputs = { nixpkgs, home-manager, ... }: + outputs = { nixpkgs, home-manager, hyprland, ... }: let system = "x86_64-linux"; pkgs = import nixpkgs { @@ -20,7 +25,7 @@ in { nixosConfigurations = { zenix = mkConf "zenix" { inherit nixpkgs system user home-manager; }; - FCS-Tristan-Nixbook = mkConf "work" { inherit nixpkgs system user home-manager; }; + FCS-Tristan-Nixbook = mkConf "work" { inherit nixpkgs system user home-manager hyprland; }; }; }; } diff --git a/lib/mkconf.nix b/lib/mkconf.nix index f5ef54d..447cea1 100644 --- a/lib/mkconf.nix +++ b/lib/mkconf.nix @@ -1,10 +1,16 @@ -name: { nixpkgs, home-manager, system, user, ... }: +name: { nixpkgs, home-manager, system, user, hyprland, ... }: nixpkgs.lib.nixosSystem rec { inherit system; modules = [ + { + nix.settings = { + substituters = ["https://hyprland.cachix.org"]; + trusted-public-keys = ["hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="]; + }; + } ../system/global/system.nix ../system/${name}/system.nix ../system/${name}/hardware.nix @@ -14,6 +20,7 @@ nixpkgs.lib.nixosSystem rec { home-manager.users.${user}.imports = [ ../system/global/home.nix ../system/${name}/home.nix + hyprland.homeManagerModules.default ]; } ]; diff --git a/system/global/home.nix b/system/global/home.nix index fe251b6..1bb64f1 100644 --- a/system/global/home.nix +++ b/system/global/home.nix @@ -67,29 +67,145 @@ { event = "lock"; command = "${pkgs.swaylock}/bin/swaylock"; } ]; + wayland.windowManager.hyprland = { + enable = true; + systemdIntegration = true; + # https://wiki.hyprland.org/Configuring/Variables/ + extraConfig = '' + env = GDK_BACKEND,wayland,x11 + env = QT_QPA_PLATFORM,wayland;xcb + env = SDL_VIDEODRIVER,wayland + env = CLUTTER_BACKEND,wayland + env = XDG_CURRENT_DESKTOP,Hyprland + env = XDG_SESSION_TYPE,wayland + env = XDG_SESSION_DESKTOP,Hyprland + env = QT_AUTO_SCREEN_SCALE_FACTOR,1 + env = QT_WAYLAND_DISABLE_WINDOWDECORATION,1 + env = NIXOS_OZONE_WL,1 + + input { + kb_layout = gb + kb_options = caps:escape + + touchpad { + natural_scroll = yes + scroll_factor = 0.5 + } + } + + bind = SUPER, RETURN, exec, foot + bind = SUPER_SHIFT, Q, killactive, + bind = SUPER_SHIFT, E, exit, + bind = SUPER, d, exec, wofi --show drun + bind = SUPER, Z, exec, swaylock -f + bind = SUPER, M, exec, foot -e ncmpcpp + bind = SUPER, E, exec, foot -e neomutt + bind = SUPER, O, exec, pcmanfm + + bind = SUPER, h, movefocus,l + bind = SUPER, l, movefocus,r + + bindm = SUPER, mouse:272, movewindow + bindm = SUPER, mouse:273, resizewindow + + bind = SUPER, j, layoutmsg,cyclenext + bind = SUPER, k, layoutmsg,cycleprev + bind = SUPER, space, layoutmsg,swapwithmaster + bind = SUPER, F, fullscreen, + bind = SUPER, V, togglefloating, + + bind = SUPER_SHIFT, P, exec,~/.local/scripts/bwmenu + bind = SUPER_SHIFT, S, exec,~/.local/scripts/screenshot + + bind =,XF86AudioRaiseVolume, exec,amixer sset Master 5%+ && amixer sset Master unmute + bind =,XF86AudioLowerVolume, exec,amixer sset Master 5%- + bind =,XF86AudioPlay, exec,~/.local/scripts/play-pause + bind =,XF86AudioNext, exec,playerctl next + bind =,XF86AudioPrev, exec,playerctl previous + bind =,XF86MonBrightnessUp, exec,~/.local/scripts/brightness-up + bind =,XF86MonBrightnessDown, exec,~/.local/scripts/brightness-down + + bind = SUPER,1,workspace,1 + bind = SUPER,2,workspace,2 + bind = SUPER,3,workspace,3 + bind = SUPER,4,workspace,4 + bind = SUPER,5,workspace,5 + bind = SUPER,6,workspace,6 + bind = SUPER,7,workspace,7 + bind = SUPER,8,workspace,8 + bind = SUPER,9,workspace,9 + bind = SUPER,0,workspace,10 + + bind = SUPER_SHIFT,1,movetoworkspace,1 + bind = SUPER_SHIFT,2,movetoworkspace,2 + bind = SUPER_SHIFT,3,movetoworkspace,3 + bind = SUPER_SHIFT,4,movetoworkspace,4 + bind = SUPER_SHIFT,5,movetoworkspace,5 + bind = SUPER_SHIFT,6,movetoworkspace,6 + bind = SUPER_SHIFT,7,movetoworkspace,7 + bind = SUPER_SHIFT,8,movetoworkspace,8 + bind = SUPER_SHIFT,9,movetoworkspace,9 + bind = SUPER_SHIFT,0,movetoworkspace,10 + + gestures { + workspace_swipe = yes + } + + decoration { + rounding = 5 + blur = 0 + } + + bezier=overshot, 0.05, 0.9, 0.1, 1.1 + animations { + enabled = 1 + animation = windows, 1, 5, default + animation = border, 1, 5, default + animation = fade, 1, 10,default + animation = workspaces, 1, 3, overshot + } + + general { + resize_on_border = yes + layout = master + } + ''; + }; programs.waybar.enable = true; programs.waybar.settings = { mainBar = { layer = "top"; position = "top"; - height = 30; + height = 36; modules-left = [ "wlr/taskbar" "hyprland/window" ]; - modules-right = [ "mpd" "pulseaudio" "clock" "tray" ]; + modules-right = [ "mpris" "wireplumber" "clock" "tray" ]; clock = { format = "πŸ“… {:%a %b-%d %I:%M %p}"; }; - pulseaudio = { + wireplumber = { format-muted = "πŸ”‡ {volume}%"; format = "{icon} {volume}"; format-icons.default = ["πŸ”ˆ" "πŸ”‰" "πŸ”Š"]; on-click = "pavucontrol"; }; - mpd = { - server = "192.168.1.2"; - on-click = "foot -e ncmpcpp"; + mpris = { + format= "{player_icon} {title}"; + format-paused= "{status_icon} {title}"; + player-icons = { + default = "▢️"; + mpv = "🎡"; + }; + status-icons = { + paused = "⏸️"; + }; + on-click = "~/.local/scripts/play-pause"; }; }; }; + programs.waybar.systemd = { + enable = true; + target = "hyprland-session.target"; + }; services.udiskie = { enable = true; @@ -123,6 +239,8 @@ bindings = [ { key = "j"; command = "scroll_down"; } { key = "k"; command = "scroll_up"; } + { key = "l"; command = "select_item"; } + { key = "k"; command = "scroll_up"; } { key = "J"; command = [ "select_item" "scroll_down" ]; } { key = "K"; command = [ "select_item" "scroll_up" ]; } ]; @@ -192,8 +310,8 @@ }; }; - services.nextcloud-client.enable = true; - services.nextcloud-client.startInBackground = true; + # services.nextcloud-client.enable = true; + # services.nextcloud-client.startInBackground = true; programs.rbw = { enable = true; diff --git a/system/global/system.nix b/system/global/system.nix index 41cb3f7..3844a95 100644 --- a/system/global/system.nix +++ b/system/global/system.nix @@ -40,17 +40,16 @@ i18n.defaultLocale = "en_GB.UTF-8"; - # Configure graphical stuff - services.xserver = { - enable = true; - layout = "gb"; - libinput.enable = true; + services.xserver.layout = "gb"; - # the only display manager that works? - displayManager.gdm.enable = true; - displayManager.autoLogin = { - enable = true; - user = "tristan"; + services.greetd = { + enable = true; + settings = rec { + initial_session = { + command = "Hyprland"; + user = "tristan"; + }; + default_session = initial_session; }; }; @@ -78,7 +77,7 @@ }; environment.shellAliases = { - code = "codium --ozone-platform=wayland"; + code = "codium"; }; environment.systemPackages = with pkgs; [ diff --git a/system/work/config/hypr.conf b/system/work/config/hypr.conf deleted file mode 100644 index 1872ca6..0000000 --- a/system/work/config/hypr.conf +++ /dev/null @@ -1,125 +0,0 @@ - -exec-once= ~/.local/scripts/autostart -monitor=,preferred,auto,1.2 - -input { - kb_file= - kb_layout=gb - kb_variant=dvorak - kb_model= - kb_options=caps:escape - kb_rules= - - follow_mouse=1 - - touchpad { - natural_scroll=yes - } - - sensitivity=0 - accel_profile=flat -} - -general { - - gaps_in=5 - gaps_out=20 - border_size=2 - col.active_border=0x66ee1111 - col.inactive_border=0x66333333 - - apply_sens_to_raw=0 - - layout = master -} - -decoration { - rounding=5 - blur=0 - blur_size=3 # minimum 1 - blur_passes=1 # minimum 1 - blur_new_optimizations=1 -} - -bezier=overshot, 0.05, 0.9, 0.1, 1.1 -animations { - enabled=1 - animation=windows,1,5,default - animation=border,1,5,default - animation=fade,1,10,default - animation=workspaces,1,3,overshot -} - -dwindle { - pseudotile=0 # enable pseudotiling on dwindle -} - -gestures { - workspace_swipe=yes -} - -bindm=SUPER,mouse:272,movewindow -bindm=SUPER,mouse:273,resizewindow - -bind=SUPER,RETURN,exec,foot -bind=SUPER_SHIFT,Q,killactive, -bind=SUPER,M,exec,foot -e ncmpcpp -bind=SUPER,E,exec,foot -e neomutt -bind=SUPER,O,exec,pcmanfm -bind=SUPER,y,exec,foot -e ytui -bind=SUPER,Z,exec,swaylock -f -bind=SUPER,T,exec,notify-send "$(date)" -bind=SUPER_SHIFT,S,exec,~/.local/scripts/screenshot -bind=SUPERCTRL_SHIFT,S,exec,qrcode.sh -bind=SUPER,p,exec,hyprpicker | wl-copy; wl-paste | xargs notify-send Copied -bind=SUPER,slash,exec,brave -bind=SUPER,V,togglefloating, -bind=SUPER,F,fullscreen, -bind=SUPER,d,exec,wofi --show drun -bind=SUPER_SHIFT,P,exec,~/.local/scripts/bwmenu -bind=SUPER,apostrophe,exec,notify-send -i mpv "$(playerctl metadata --format '{{title}}')" "$(playerctl metadata --format '{{album}}')" -t 3000 -bind=SUPER_SHIFT,E,exit, -bind=,XF86AudioRaiseVolume,exec,amixer sset Master 5%+ && amixer sset Master unmute -bind=,XF86AudioLowerVolume,exec,amixer sset Master 5%- -bind=,XF86AudioPlay,exec,~/.local/scripts/play-pause -bind=,XF86AudioNext,exec,playerctl next -bind=,XF86AudioPrev,exec,playerctl previous -bind=,XF86MonBrightnessUp,exec,~/.local/scripts/brightness-up -bind=,XF86MonBrightnessDown,exec,~/.local/scripts/brightness-down - -bind=SUPER,h,movefocus,l -bind=SUPER,l,movefocus,r - -bind=SUPER,j,layoutmsg,cyclenext -bind=SUPER,k,layoutmsg,cycleprev -bind=SUPER,space,layoutmsg,swapwithmaster - -master { - new_is_master= true - new_on_top= true -} - -bind=SUPER,1,workspace,1 -bind=SUPER,2,workspace,2 -bind=SUPER,3,workspace,3 -bind=SUPER,4,workspace,4 -bind=SUPER,5,workspace,5 -bind=SUPER,6,workspace,6 -bind=SUPER,7,workspace,7 -bind=SUPER,8,workspace,8 -bind=SUPER,9,workspace,9 -bind=SUPER,0,workspace,10 - -bind=SUPER_SHIFT,1,movetoworkspace,1 -bind=SUPER_SHIFT,2,movetoworkspace,2 -bind=SUPER_SHIFT,3,movetoworkspace,3 -bind=SUPER_SHIFT,4,movetoworkspace,4 -bind=SUPER_SHIFT,5,movetoworkspace,5 -bind=SUPER_SHIFT,6,movetoworkspace,6 -bind=SUPER_SHIFT,7,movetoworkspace,7 -bind=SUPER_SHIFT,8,movetoworkspace,8 -bind=SUPER_SHIFT,9,movetoworkspace,9 -bind=SUPER_SHIFT,0,movetoworkspace,10 - -bind=SUPER,mouse_down,workspace,e+1 -bind=SUPER,mouse_up,workspace,e-1 diff --git a/system/work/hardware.nix b/system/work/hardware.nix index 335310a..bf6c1f4 100644 --- a/system/work/hardware.nix +++ b/system/work/hardware.nix @@ -45,4 +45,15 @@ nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; powerManagement.cpuFreqGovernor = lib.mkDefault "powersave"; hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; + + hardware.opengl = { + enable = true; + extraPackages = with pkgs; [ + intel-media-driver # LIBVA_DRIVER_NAME=iHD + vaapiIntel # LIBVA_DRIVER_NAME=i965 (older but works better for Firefox/Chromium) + vaapiVdpau + libvdpau-va-gl + ]; + }; + } diff --git a/system/work/home.nix b/system/work/home.nix index cb56e4b..d22d113 100644 --- a/system/work/home.nix +++ b/system/work/home.nix @@ -13,48 +13,40 @@ programs.git = { enable = true; - userName = "tristan"; - userEmail = "tristan@tristans.cloud"; + userName = "Tristan Beedell"; + userEmail = "tristan.beedell@cryoserver.com"; aliases = { graph = "log --oneline --all --graph"; amend = "commit --amend --no-edit"; }; }; - accounts.email.accounts."tristan@tristans.cloud" = { - notmuch.enable = true; - neomutt.enable = true; - mbsync.enable = true; - mbsync.create = "maildir"; - userName = "tristan@tristans.cloud"; - realName = "Tristan"; - address = "tristan@tristans.cloud"; + accounts.email.accounts."tristan.beedell@cryoserver.com" = { + userName = "tristan.beedell@cryoserver.com"; + realName = "Tristan Beedell"; + address = "tristan.beedell@cryoserver.com"; primary = true; - passwordCommand = "rbw get privateemail"; - smtp = { - host = "mail.privateemail.com"; - port = 465; - tls.enable = true; - }; - imap = { - host = "mail.privateemail.com"; - port = 993; - tls.enable = true; + }; + + programs.waybar.settings.mainBar = { + modules-right = ["battery"]; + battery = { + format = "{icon} {capacity}%"; + format-icons = ["🀏" "πŸͺ«" "πŸ”‹"]; + states = { + warning = 30; + critical = 15; + }; }; }; - programs.notmuch.enable = true; - programs.neomutt = { - enable = true; - vimKeys = true; - sort = "reverse-date"; - sidebar.enable = true; - }; - programs.mbsync.enable = true; - services.mbsync.enable = true; - - home.file.".config/hypr/hyprland.conf" = { - source = ./config/hypr.conf; + wayland.windowManager.hyprland = { + extraConfig = '' + monitor = ,preferred,auto, 1.2 + input { + kb_variant = dvorak + } + ''; }; } diff --git a/system/zenix/config/hypr.conf b/system/zenix/config/hypr.conf deleted file mode 100644 index 79b6bd3..0000000 --- a/system/zenix/config/hypr.conf +++ /dev/null @@ -1,137 +0,0 @@ - -exec-once= ~/.local/scripts/autostart -monitor=,preferred,auto,1 -monitor=DP-1,1920x1080@144,0x0,1 -monitor=HDMI-A-1,1920x1080@60,1920x0,1 - -input { - kb_file= - kb_layout=gb - kb_variant= - kb_model= - kb_options=caps:escape - kb_rules= - - follow_mouse=1 - - touchpad { - natural_scroll=yes - } - - sensitivity=0 - accel_profile=flat -} - -general { - - gaps_in=5 - gaps_out=20 - border_size=2 - col.active_border=0x66ee1111 - col.inactive_border=0x66333333 - - apply_sens_to_raw=0 - - layout = master -} - -decoration { - rounding=5 - blur=0 - blur_size=3 # minimum 1 - blur_passes=1 # minimum 1 - blur_new_optimizations=1 -} - -bezier=overshot, 0.05, 0.9, 0.1, 1.1 -animations { - enabled=1 - animation=windows,1,5,default - animation=border,1,5,default - animation=fade,1,10,default - animation=workspaces,1,3,overshot -} - -dwindle { - pseudotile=0 # enable pseudotiling on dwindle -} - -gestures { - workspace_swipe=yes -} - -bindm=SUPER,mouse:272,movewindow -bindm=SUPER,mouse:273,resizewindow - -bind=SUPER,RETURN,exec,foot -bind=SUPER_SHIFT,X,killactive, -bind=SUPER,M,exec,foot -e ncmpcpp -bind=SUPER,E,exec,foot -e neomutt -bind=SUPER,O,exec,pcmanfm -bind=SUPER,y,exec,foot -e ytui -bind=SUPER,Z,exec,swaylock -f -bind=SUPER,T,exec,notify-send "$(date)" -bind=SUPER_SHIFT,S,exec,~/.local/scripts/screenshot -bind=SUPERCTRL_SHIFT,S,exec,qrcode.sh -bind=SUPER,p,exec,hyprpicker | wl-copy; wl-paste | xargs notify-send Copied -bind=SUPER,slash,exec,brave -bind=SUPER,V,togglefloating, -bind=SUPER,F,fullscreen, -bind=SUPER,d,exec,wofi --show drun -bind=SUPER_SHIFT,P,exec,~/.local/scripts/bwmenu -bind=SUPER,apostrophe,exec,notify-send -i mpv "$(playerctl metadata --format '{{title}}')" "$(playerctl metadata --format '{{album}}')" -t 3000 -bind=SUPER_SHIFT,E,exit, -bind=,XF86AudioRaiseVolume,exec,amixer -D pulse sset Master 5%+ && amixer sset Master unmute -bind=,XF86AudioLowerVolume,exec,amixer -D pulse sset Master 5%- -bind=,XF86AudioPlay,exec,~/.local/scripts/play-pause -bind=,XF86AudioNext,exec,playerctl next -bind=,XF86AudioPrev,exec,playerctl previous - -bind=SUPER,h,movefocus,l -bind=SUPER,l,movefocus,r - -bind=SUPER,j,layoutmsg,cyclenext -bind=SUPER,k,layoutmsg,cycleprev -bind=SUPER,space,layoutmsg,swapwithmaster - -master { - new_is_master= true - new_on_top= true -} - -bind=SUPER,1,workspace,1 -wsbind=1,DP-1 -workspace = DP-1, 6 -bind=SUPER,2,workspace,2 -wsbind=2,DP-1 -bind=SUPER,3,workspace,3 -wsbind=3,DP-1 -bind=SUPER,4,workspace,4 -wsbind=4,DP-1 -bind=SUPER,5,workspace,5 -wsbind=5,DP-1 -bind=SUPER,6,workspace,6 -wsbind=6,HDMI-A-1 -workspace = HDMI-A-1, 6 -bind=SUPER,7,workspace,7 -wsbind=7,HDMI-A-1 -bind=SUPER,8,workspace,8 -wsbind=8,HDMI-A-1 -bind=SUPER,9,workspace,9 -wsbind=9,HDMI-A-1 -bind=SUPER,0,workspace,10 -wsbind=10,HDMI-A-1 - -bind=SUPER_SHIFT,1,movetoworkspace,1 -bind=SUPER_SHIFT,2,movetoworkspace,2 -bind=SUPER_SHIFT,3,movetoworkspace,3 -bind=SUPER_SHIFT,4,movetoworkspace,4 -bind=SUPER_SHIFT,5,movetoworkspace,5 -bind=SUPER_SHIFT,6,movetoworkspace,6 -bind=SUPER_SHIFT,7,movetoworkspace,7 -bind=SUPER_SHIFT,8,movetoworkspace,8 -bind=SUPER_SHIFT,9,movetoworkspace,9 -bind=SUPER_SHIFT,0,movetoworkspace,10 - -bind=SUPER,mouse_down,workspace,e+1 -bind=SUPER,mouse_up,workspace,e-1 diff --git a/system/zenix/home.nix b/system/zenix/home.nix index 9292a0f..ca9c26a 100644 --- a/system/zenix/home.nix +++ b/system/zenix/home.nix @@ -53,4 +53,23 @@ source = ./config/hypr.conf; }; + wayland.windowManager.hyprland = { + extraConfig = '' + monitor = DP-1, 1920x1080@144,0x0, 1 + monitor = HDMI-A-1, 1920x1080@60, 1920x0,1 + workspace = DP-1, 1 + workspace = HDMI-A-1, 6 + wsbind = 1, DP-1 + wsbind = 2, DP-1 + wsbind = 3, DP-1 + wsbind = 4, DP-1 + wsbind = 5, DP-1 + wsbind = 6, HDMI-A-1 + wsbind = 7, HDMI-A-1 + wsbind = 8, HDMI-A-1 + wsbind = 9, HDMI-A-1 + wsbind = 10,HDMI-A-1 + ''; + }; + }