WIP: use hyprland

This commit is contained in:
Leonardo Eugênio 2024-01-15 22:37:11 -03:00
parent 25c8833ec3
commit 7b2f97155f
6 changed files with 56 additions and 17 deletions

View file

@ -99,7 +99,7 @@
{ login-manager.greetd.enable = desktop == "sway" || desktop == "hyprland"; } { login-manager.greetd.enable = desktop == "sway" || desktop == "hyprland"; }
inputs.agenix.nixosModules.default inputs.agenix.nixosModules.default
inputs.hyprland.nixosModules.default # inputs.hyprland.nixosModules.default
inputs.dzgui-nix.nixosModules.default inputs.dzgui-nix.nixosModules.default
{ programs.hyprland.enable = (desktop == "hyprland"); } { programs.hyprland.enable = (desktop == "hyprland"); }
inputs.home-manager.nixosModules.home-manager inputs.home-manager.nixosModules.home-manager

View file

@ -99,6 +99,16 @@
# Enable touchpad support (enabled default in most desktopManager). # Enable touchpad support (enabled default in most desktopManager).
services.xserver.libinput.enable = true; services.xserver.libinput.enable = true;
xdg.portal = {
config.common.default = "*";
enable = true;
wlr.enable = true;
# Always pick the first monitor, this is fine since I only ever use a single monitor
wlr.settings.screencast.chooser_type = "none";
# gtk portal needed to make gtk apps happy
extraPortals = [ pkgs.xdg-desktop-portal-gtk ];
};
# Define a user account. Don't forget to set a password with passwd. # Define a user account. Don't forget to set a password with passwd.
users.mutableUsers = false; users.mutableUsers = false;
users.users.lelgenio = { users.users.lelgenio = {

View file

@ -36,7 +36,7 @@
./gnome.nix ./gnome.nix
./thunar.nix ./thunar.nix
./xdg-dirs.nix ./xdg-dirs.nix
inputs.hyprland.homeManagerModules.default # inputs.hyprland.homeManagerModules.default
inputs.nix-index-database.hmModules.nix-index inputs.nix-index-database.hmModules.nix-index
]; ];

View file

@ -32,18 +32,18 @@
apply_sens_to_raw=0 # whether to apply the sensitivity to raw input (e.g. used by games where you aim using your mouse) apply_sens_to_raw=0 # whether to apply the sensitivity to raw input (e.g. used by games where you aim using your mouse)
damage_tracking=full # leave it on full unless you hate your GPU and want to make it suffer # damage_tracking=full # leave it on full unless you hate your GPU and want to make it suffer
} }
decoration { # decoration {
rounding=5 # rounding=5
blur=1 # blur=1
blur_size=3 # minimum 1 # # blur_size=3 # minimum 1
blur_passes=1 # minimum 1, more passes = more resource intensive. # # blur_passes=1 # minimum 1, more passes = more resource intensive.
# Your blur "amount" is blur_size * blur_passes, but high blur_size (over around 5-ish) will produce artifacts. # # Your blur "amount" is blur_size * blur_passes, but high blur_size (over around 5-ish) will produce artifacts.
# if you want heavy blur, you need to up the blur_passes. # # if you want heavy blur, you need to up the blur_passes.
# the more passes, the more you can up the blur_size without noticing artifacts. # # the more passes, the more you can up the blur_size without noticing artifacts.
} # }
animations { animations {
enabled=1 enabled=1
@ -121,7 +121,7 @@
bind=SUPER,mouse_up,workspace,e+1 bind=SUPER,mouse_up,workspace,e+1
''; '';
}; };
home.file.".config/eww".source = ./eww; # home.file.".config/eww".source = ./eww;
home.packages = with pkgs; [ eww-wayland jq ]; # home.packages = with pkgs; [ eww-wayland jq ];
}; };
} }

View file

@ -129,7 +129,7 @@ rec {
}; };
dmenu = "bmenu"; dmenu = "bmenu";
desktop = "sway"; desktop = "hyprland";
browser = "firefox"; browser = "firefox";
editor = "kakoune"; editor = "kakoune";
email-client = "thunderbird"; email-client = "thunderbird";

View file

@ -11,10 +11,18 @@ in
systemd.target = "sway-session.target"; systemd.target = "sway-session.target";
settings = [{ settings = [{
layer = "top"; layer = "top";
modules-left = [ "sway/workspaces" "sway/mode" "sway/window" ]; modules-left = [
"sway/workspaces"
"sway/mode"
"sway/window"
"hyprland/workspaces"
"hyprland/mode"
"hyprland/window"
];
modules-center = [ "clock" ]; modules-center = [ "clock" ];
modules-right = lib.flatten [ modules-right = lib.flatten [
"sway/language" "sway/language"
"hyprland/language"
"mpd" "mpd"
"custom/playerctl" "custom/playerctl"
# "tray" # "tray"
@ -68,6 +76,28 @@ in
}; };
}; };
"sway/window" = { max-length = 40; }; "sway/window" = { max-length = 40; };
"sway/language" = { format = "{short} {variant}"; };
"hyprland/workspaces" = {
enable-bar-scroll = true;
format = "{icon}";
format-icons = {
"1" = "";
"2" = "";
"3" = "󰅩";
"4" = "";
"5" = "";
"6" = "";
"7" = "󰇮";
"8" = "";
"9" = "";
"10" = "";
urgent = "";
# focused = "";
default = "";
};
};
"hyprland/window" = { max-length = 40; };
"hyprland/language" = { format = "{short} {variant}"; };
"tray" = { "tray" = {
"spacing" = 7; "spacing" = 7;
"icon-size" = 19; "icon-size" = 19;
@ -123,7 +153,6 @@ in
interval = 1; interval = 1;
tooltip = false; tooltip = false;
}; };
"sway/language" = { format = "{short} {variant}"; };
"custom/caffeine" = { "custom/caffeine" = {
format = "{}"; format = "{}";
exec = "systemctl --user status swayidle > /dev/null && echo 󰒲 || echo 󰒳"; exec = "systemctl --user status swayidle > /dev/null && echo 󰒲 || echo 󰒳";