trying to get hyprland to latest latest version to fix crashing windows... it did not work

This commit is contained in:
RingOfStorms (Joshua Bell) 2025-08-30 18:28:00 -05:00
parent 7f706e870e
commit 85b427cb12
12 changed files with 1090 additions and 69 deletions

View file

@ -2,6 +2,8 @@
config,
lib,
pkgs,
hyprland,
hyprlandPkgs,
...
}:
let
@ -21,7 +23,7 @@ with lib;
enable = lib.mkEnableOption "hyprland desktop environment";
terminalCommand = mkOption {
type = lib.types.str;
default = "kitty";
default = "foot";
description = "The terminal command to use.";
};
extraOptions = mkOption {
@ -41,16 +43,18 @@ with lib;
# Enable for all users
home-manager = {
sharedModules = [
hyprland.homeManagerModules.default
./home_manager
];
};
# Display Manager
services = {
displayManager = {
sddm = {
enable = true;
wayland.enable = true;
services.greetd = {
enable = true;
vt = 2;
settings = {
default_session = {
command = "${pkgs.greetd.tuigreet}/bin/tuigreet --time --remember --remember-session --cmd '${pkgs.dbus}/bin/dbus-run-session ${hyprlandPkgs.hyprland}/bin/Hyprland'";
user = "greeter";
};
};
};
@ -61,7 +65,6 @@ with lib;
layout = "us";
options = "caps:escape";
};
hardware.graphics.enable = true;
environment.systemPackages = with pkgs; [
wl-clipboard
@ -76,6 +79,9 @@ with lib;
libgtop # system monitor library
bluez # Bluetooth support
power-profiles-daemon # power profiles
grim
slurp
hyprpicker
grimblast # screenshot tool
wf-recorder # screen recording tool
btop # system monitor
@ -85,8 +91,21 @@ with lib;
programs.hyprland = {
enable = true;
xwayland.enable = true;
# xwayland.enable = true;
withUWSM = true;
# set the flake package
package = hyprlandPkgs.hyprland;
# make sure to also set the portal package, so that they are in sync
portalPackage = hyprlandPkgs.xdg-desktop-portal-hyprland;
};
hardware.graphics = {
enable = true;
package = hyprlandPkgs.mesa;
# if you also want 32-bit support (e.g for Steam)
# enable32Bit = true;
package32 = hyprlandPkgs.pkgsi686Linux.mesa;
};
# Environment variables
@ -97,6 +116,8 @@ with lib;
XDG_CURRENT_DESKTOP = "Hyprland";
XDG_SESSION_DESKTOP = "Hyprland";
ELECTRON_OZONE_PLATFORM_HINT = "wayland";
CLUTTER_BACKEND = "wayland";
WLR_RENDERER = "vulkan";
};
# Qt theming

View file

@ -1,7 +1,7 @@
{
osConfig,
lib,
pkgs,
hyprlandPkgs,
...
}:
let
@ -16,22 +16,19 @@ in
{
wayland.windowManager.hyprland = {
enable = true;
# set the Hyprland and XDPH packages to null to use the ones from the NixOS module
package = null;
portalPackage = null;
plugins = with pkgs.hyprlandPlugins; [
plugins = with hyprlandPkgs.hyprlandPlugins; [
hyprspace
];
settings = lib.attrsets.recursiveUpdate {
# TODO determine if need to keep
env = [ "XWAYLAND_NO_GLAMOR,1" ];
# Debug logs enabled when this is uncommented
"debug:disable_logs" = false;
# Default monitor configuration
monitor = "monitor = , preferred, auto, 1";
windowrulev2 = [
# Bitwarden password manager popup for chrome, always float it
"float, class:^(?i)chrome-nngceckbapebfimnlniiiahkandclblb-Default$, initialtitle:^_crx_nngceckbapebfimnlniiiahkandclblb$"
"center, class:^(?i)chrome-nngceckbapebfimnlniiiahkandclblb-Default$, initialtitle:^_crx_nngceckbapebfimnlniiiahkandclblb$"
"size 720 600, class:^(?i)chrome-nngceckbapebfimnlniiiahkandclblb-Default$, initialtitle:^_crx_nngceckbapebfimnlniiiahkandclblb$"
@ -91,6 +88,7 @@ in
"$mainMod, Return, exec, ${cfg.terminalCommand}"
"$mainMod, Space, exec, pkill wofi || wofi --show drun"
"$mainMod, q, killactive"
"$mainMod SHIFT, escape, exit"
"$mainMod SHIFT, q, exec, swaylock"
"$mainMod, f, togglefloating"
"$mainMod, g, pseudo"