latest hyprlanding
This commit is contained in:
parent
7077e3af71
commit
b08978f399
2 changed files with 39 additions and 26 deletions
|
|
@ -1,14 +1,14 @@
|
||||||
# See https://wiki.hyprland.org/Configuring/Monitors/
|
# See https://wiki.hyprland.org/Configuring/Monitors/
|
||||||
monitor=,highrr,auto,auto
|
|
||||||
monitor=eDP-1, 1920x1080@60Hz, 1280x1480, 1
|
# Source monitor config for machine
|
||||||
monitor=DP-5, 1920x1080@60Hz, 1920x400, 1
|
source = ./monitors.conf
|
||||||
monitor=DP-7, 2560x1440@60Hz, 3840x0, 1, transform, 3
|
|
||||||
monitor=DP-6, disable
|
|
||||||
|
|
||||||
# Wayland related environment variables.
|
# Wayland related environment variables.
|
||||||
env = XCURSOR_SIZE,24
|
env = HYPRCURSOR_THEME,McMojave
|
||||||
|
env = HYPRCURSOR_SIZE,30
|
||||||
env = WLR_NO_HARDWARE_CURSORS,1
|
env = WLR_NO_HARDWARE_CURSORS,1
|
||||||
env = TERMINAL,foot
|
env = TERMINAL,foot
|
||||||
|
env = QT_QPA_PLATFORM,wayland
|
||||||
|
|
||||||
# For all categories, see https://wiki.hyprland.org/Configuring/Variables/
|
# For all categories, see https://wiki.hyprland.org/Configuring/Variables/
|
||||||
input {
|
input {
|
||||||
|
|
@ -40,7 +40,9 @@ general {
|
||||||
gaps_out = 12
|
gaps_out = 12
|
||||||
border_size = 2
|
border_size = 2
|
||||||
# col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg
|
# col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg
|
||||||
col.active_border = rgba(ffffffff) rgba(ffffffff) 45deg
|
col.active_border = rgba(83a598ff) rgba(acc3baff) 45deg
|
||||||
|
# col.active_border = rgba(fc8577ff) rgba(fb4934ff) 45deg
|
||||||
|
# col.active_border = rgba(b3d5a7ff) rgba(8ec07cff) 45deg
|
||||||
col.inactive_border = rgba(595959aa)
|
col.inactive_border = rgba(595959aa)
|
||||||
|
|
||||||
layout = master
|
layout = master
|
||||||
|
|
@ -92,7 +94,7 @@ dwindle {
|
||||||
master {
|
master {
|
||||||
# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
|
# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
|
||||||
new_on_top = true
|
new_on_top = true
|
||||||
new_is_master = true
|
new_status = master
|
||||||
no_gaps_when_only = true
|
no_gaps_when_only = true
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -112,7 +114,8 @@ misc {
|
||||||
# Window rules
|
# Window rules
|
||||||
windowrule = tile,title:^(VRChat)$
|
windowrule = tile,title:^(VRChat)$
|
||||||
windowrule = tile,title:^(nsxiv)$
|
windowrule = tile,title:^(nsxiv)$
|
||||||
windowrule = bordercolor rgb(FF0000) rgb(880808),title:^(rofi.*)$
|
|
||||||
|
windowrulev2 = suppressevent maximize, class:.* # Some windows try to maximize themselves instantly
|
||||||
|
|
||||||
$mainMod = SUPER
|
$mainMod = SUPER
|
||||||
|
|
||||||
|
|
@ -129,10 +132,10 @@ bind = $mainMod, M, exec, foot -e zsh -c 'neomutt'
|
||||||
bind = $mainMod, R, exec, fuzzel
|
bind = $mainMod, R, exec, fuzzel
|
||||||
|
|
||||||
# System control keybinds
|
# System control keybinds
|
||||||
binde = $mainMod, MINUS, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 1%-; notify-send -r 44 "$(wpctl get-volume @DEFAULT_AUDIO_SINK@)"
|
binde = $mainMod, MINUS, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 1%-; test -z "$(pidof waybar)" && notify-send -r 44 "$(wpctl get-volume @DEFAULT_AUDIO_SINK@)"
|
||||||
binde = $mainMod SHIFT, MINUS, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-; notify-send -r 44 "$(wpctl get-volume @DEFAULT_AUDIO_SINK@)"
|
binde = $mainMod SHIFT, MINUS, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-; test -z "$(pidof waybar)" && notify-send -r 44 "$(wpctl get-volume @DEFAULT_AUDIO_SINK@)"
|
||||||
binde = $mainMod, EQUAL, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 1%+; notify-send -r 44 "$(wpctl get-volume @DEFAULT_AUDIO_SINK@)"
|
binde = $mainMod, EQUAL, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 1%+; test -z "$(pidof waybar)" && notify-send -r 44 "$(wpctl get-volume @DEFAULT_AUDIO_SINK@)"
|
||||||
binde = $mainMod SHIFT, EQUAL, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+; notify-send -r 44 "$(wpctl get-volume @DEFAULT_AUDIO_SINK@)"
|
binde = $mainMod SHIFT, EQUAL, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+; test -z "$(pidof waybar)" && notify-send -r 44 "$(wpctl get-volume @DEFAULT_AUDIO_SINK@)"
|
||||||
binde = ,F7, exec, change-brightness up
|
binde = ,F7, exec, change-brightness up
|
||||||
binde = ,XF86MonBrightnessUp, exec, change-brightness up
|
binde = ,XF86MonBrightnessUp, exec, change-brightness up
|
||||||
binde = ,F6, exec, change-brightness down
|
binde = ,F6, exec, change-brightness down
|
||||||
|
|
@ -195,7 +198,7 @@ bind = $mainMod SHIFT, T, layoutmsg, orientationtop
|
||||||
|
|
||||||
# Special windows
|
# Special windows
|
||||||
bind = $mainMod, F, togglefloating,
|
bind = $mainMod, F, togglefloating,
|
||||||
bind = $mainMod SHIFT, F, fakefullscreen
|
bind = $mainMod SHIFT, F, fullscreenstate, 1
|
||||||
bind = $mainMod, S, togglespecialworkspace, magic
|
bind = $mainMod, S, togglespecialworkspace, magic
|
||||||
bind = $mainMod SHIFT, S, movetoworkspace, special:magic
|
bind = $mainMod SHIFT, S, movetoworkspace, special:magic
|
||||||
|
|
||||||
|
|
@ -221,7 +224,7 @@ bind = $mainMod SHIFT, 6, exec, hyprdwm moveto 6
|
||||||
bind = $mainMod SHIFT, 7, exec, hyprdwm moveto 7
|
bind = $mainMod SHIFT, 7, exec, hyprdwm moveto 7
|
||||||
bind = $mainMod SHIFT, 8, exec, hyprdwm moveto 8
|
bind = $mainMod SHIFT, 8, exec, hyprdwm moveto 8
|
||||||
bind = $mainMod SHIFT, 9, exec, hyprdwm moveto 9
|
bind = $mainMod SHIFT, 9, exec, hyprdwm moveto 9
|
||||||
bind = $mainMod SHIFT, 9, exec, hyprdwm moveto 10
|
bind = $mainMod SHIFT, 0, exec, hyprdwm moveto 10
|
||||||
|
|
||||||
# Moving windows between monitors
|
# Moving windows between monitors
|
||||||
bind = $mainMod SHIFT, COMMA, movewindow, mon:-1
|
bind = $mainMod SHIFT, COMMA, movewindow, mon:-1
|
||||||
|
|
|
||||||
|
|
@ -8,14 +8,15 @@ let
|
||||||
nixos-unstable = (import <nixos-unstable> {});
|
nixos-unstable = (import <nixos-unstable> {});
|
||||||
|
|
||||||
flake-compat = builtins.fetchTarball "https://github.com/edolstra/flake-compat/archive/master.tar.gz";
|
flake-compat = builtins.fetchTarball "https://github.com/edolstra/flake-compat/archive/master.tar.gz";
|
||||||
hyprland = (import flake-compat {
|
|
||||||
src = builtins.fetchTarball "https://github.com/hyprwm/Hyprland/archive/master.tar.gz";
|
hyprland_nightly = (import flake-compat {
|
||||||
|
# we're not using pkgs.fetchgit as that requires a hash to be provided
|
||||||
|
src = builtins.fetchGit {
|
||||||
|
url = "https://github.com/hyprwm/Hyprland.git";
|
||||||
|
submodules = true;
|
||||||
|
};
|
||||||
}).defaultNix;
|
}).defaultNix;
|
||||||
in {
|
in {
|
||||||
imports = [
|
|
||||||
hyprland.nixosModules.default
|
|
||||||
];
|
|
||||||
|
|
||||||
# Trusted Hyprland cache, as to not have to rebuild nightly
|
# Trusted Hyprland cache, as to not have to rebuild nightly
|
||||||
nix.settings = {
|
nix.settings = {
|
||||||
substituters = ["https://hyprland.cachix.org"];
|
substituters = ["https://hyprland.cachix.org"];
|
||||||
|
|
@ -29,23 +30,26 @@ in {
|
||||||
hyprland = { # Dynamic tiling window manager
|
hyprland = { # Dynamic tiling window manager
|
||||||
enable = true;
|
enable = true;
|
||||||
xwayland.enable = true;
|
xwayland.enable = true;
|
||||||
# package = ((hyprland.packages.${pkgs.system}.default).override (o: {
|
# package = nixos-unstable.hyprland;
|
||||||
# });
|
package = hyprland_nightly.packages.${pkgs.stdenv.hostPlatform.system}.hyprland;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
systemd.user.services = {
|
systemd.user.services = {
|
||||||
hyprland-autoname-workspaces = {
|
hyprland-autoname-workspaces = {
|
||||||
description = "Hyprland-autoname-workspaces as systemd service";
|
description = "Hyprland-autoname-workspaces as systemd service";
|
||||||
|
after = [ "graphical-session.target" ];
|
||||||
|
requires = [ "graphical-session.target" ];
|
||||||
wantedBy = [ "graphical-session.target" ];
|
wantedBy = [ "graphical-session.target" ];
|
||||||
partOf = [ "graphical-session.target" ];
|
|
||||||
script = "${pkgs.hyprland-autoname-workspaces}/bin/hyprland-autoname-workspaces";
|
script = "${pkgs.hyprland-autoname-workspaces}/bin/hyprland-autoname-workspaces";
|
||||||
serviceConfig.Restart = "always";
|
serviceConfig.Restart = "always";
|
||||||
serviceConfig.RestartSec = 1;
|
serviceConfig.RestartSec = 1;
|
||||||
};
|
};
|
||||||
network-manager-applet = {
|
network-manager-applet = {
|
||||||
description = "Start the network manager applet";
|
description = "Start the network manager applet";
|
||||||
wantedBy = [ "default.target" ];
|
after = [ "graphical-session.target" ];
|
||||||
|
requires = [ "graphical-session.target" ];
|
||||||
|
wantedBy = [ "graphical-session.target" ];
|
||||||
serviceConfig.Type = "forking";
|
serviceConfig.Type = "forking";
|
||||||
serviceConfig.Restart = "always";
|
serviceConfig.Restart = "always";
|
||||||
serviceConfig.RestartSec = 1;
|
serviceConfig.RestartSec = 1;
|
||||||
|
|
@ -56,7 +60,7 @@ in {
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
ags # GTK shell for status bar and widgets
|
ags # GTK shell for status bar and widgets
|
||||||
blueman # Bluetooth manager
|
blueman # Bluetooth manager
|
||||||
# dunst # Notification daemon
|
dunst # Notification daemon
|
||||||
firefox # My browser of choice
|
firefox # My browser of choice
|
||||||
foot # Wayland native terminal
|
foot # Wayland native terminal
|
||||||
fuzzel # Fuzzy finding menuing program
|
fuzzel # Fuzzy finding menuing program
|
||||||
|
|
@ -79,9 +83,11 @@ in {
|
||||||
rofi-pass # Rofi frontend for password store
|
rofi-pass # Rofi frontend for password store
|
||||||
sassc # SCSS interpreter
|
sassc # SCSS interpreter
|
||||||
slurp # Screen selection utility
|
slurp # Screen selection utility
|
||||||
|
sassc # Styling language for AGS
|
||||||
swaylock # Wayland session locker
|
swaylock # Wayland session locker
|
||||||
swww # Sets background images
|
swww # Sets background images
|
||||||
texlive.combined.scheme-full # LaTeX to create documents
|
texlive.combined.scheme-full # LaTeX to create documents
|
||||||
|
tor-browser # Onion network browser
|
||||||
typst # Cool, minimal LaTeX alternative
|
typst # Cool, minimal LaTeX alternative
|
||||||
ungoogled-chromium # If I need a special chrome feature
|
ungoogled-chromium # If I need a special chrome feature
|
||||||
waybar # Status bar
|
waybar # Status bar
|
||||||
|
|
@ -90,6 +96,7 @@ in {
|
||||||
wl-clipboard # Copy/paste utility
|
wl-clipboard # Copy/paste utility
|
||||||
wlr-randr # Xrandr substitute
|
wlr-randr # Xrandr substitute
|
||||||
xwaylandvideobridge # Allows screensharing from XWayland programs
|
xwaylandvideobridge # Allows screensharing from XWayland programs
|
||||||
|
xorg.xcursorthemes
|
||||||
zathura # Minimalist PDF reader
|
zathura # Minimalist PDF reader
|
||||||
|
|
||||||
# GTK Themes
|
# GTK Themes
|
||||||
|
|
@ -99,6 +106,9 @@ in {
|
||||||
|
|
||||||
nixpkgs.overlays = [
|
nixpkgs.overlays = [
|
||||||
(self: super: {
|
(self: super: {
|
||||||
|
hyprland-autoname-workspaces = nixos-unstable.hyprland-autoname-workspaces;
|
||||||
|
waybar = nixos-unstable.waybar;
|
||||||
|
typst = nixos-unstable.typst;
|
||||||
hyprpicker = hyprpicker_0_1_1;
|
hyprpicker = hyprpicker_0_1_1;
|
||||||
grimblast = super.grimblast.override (o: {
|
grimblast = super.grimblast.override (o: {
|
||||||
hyprpicker = hyprpicker_0_1_1;
|
hyprpicker = hyprpicker_0_1_1;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue