1
0
Fork 0

Gnome: add fractional scaling patch for xWayland apps

This commit is contained in:
Aires 2024-09-18 12:56:32 -04:00
parent 0efee8cfe0
commit d90808d33f
5 changed files with 2133 additions and 5 deletions

View file

@ -55,7 +55,7 @@ in
ui = { ui = {
desktops.gnome = { desktops.gnome = {
enable = true; enable = true;
tripleBuffering.enable = true; experimentalFeatures.enable = true;
}; };
flatpak = { flatpak = {
# Enable Flatpak support. # Enable Flatpak support.

View file

@ -108,7 +108,7 @@ in
}; };
desktops.gnome = { desktops.gnome = {
enable = true; enable = true;
tripleBuffering.enable = true; experimentalFeatures.enable = true;
}; };
}; };
users = { users = {

View file

@ -14,7 +14,7 @@ in
options = { options = {
aux.system.ui.desktops.gnome = { aux.system.ui.desktops.gnome = {
enable = lib.mkEnableOption "Enables the Gnome Desktop Environment."; enable = lib.mkEnableOption "Enables the Gnome Desktop Environment.";
tripleBuffering.enable = lib.mkEnableOption "(Experimental) Enables dynamic triple buffering"; experimentalFeatures.enable = lib.mkEnableOption "Enables dynamic triple buffering and fractional scaling for xwayland applications.";
}; };
}; };
@ -102,7 +102,7 @@ in
style = "adwaita-dark"; style = "adwaita-dark";
}; };
nixpkgs.overlays = lib.mkIf cfg.tripleBuffering.enable [ nixpkgs.overlays = lib.mkIf cfg.experimentalFeatures.enable [
# GNOME 46: triple-buffering-v4-46 # GNOME 46: triple-buffering-v4-46
# For details, see https://wiki.nixos.org/wiki/GNOME#Dynamic_triple_buffering # For details, see https://wiki.nixos.org/wiki/GNOME#Dynamic_triple_buffering
(final: prev: { (final: prev: {
@ -116,6 +116,9 @@ in
rev = "triple-buffering-v4-46"; rev = "triple-buffering-v4-46";
hash = "sha256-C2VfW3ThPEZ37YkX7ejlyumLnWa9oij333d5c4yfZxc="; hash = "sha256-C2VfW3ThPEZ37YkX7ejlyumLnWa9oij333d5c4yfZxc=";
}; };
# Scaling patch sourced from https://aur.archlinux.org/packages/mutter-xwayland-scaling
patches = [ ./patches/gnome-mutter-xwayland-scaling.patch ];
}); });
} }
); );

File diff suppressed because it is too large Load diff

View file

@ -7,7 +7,8 @@
workspaces-only-on-primary = false; workspaces-only-on-primary = false;
experimental-features = [ experimental-features = [
"scale-monitor-framebuffer" # Fractional scaling "scale-monitor-framebuffer" # Fractional scaling
"variable-refresh-rate" "xwayland-native-scaling" # Related to fractional scaline
"variable-refresh-rate" # VRR
]; ];
}; };