Environment
- OS: Linux Mint 22 (Ubuntu 24.04 base)
- Cinnamon: 6.6.7
- Muffin: X11 session,
x11-randr-fractional-scaling + scale-monitor-framebuffer enabled
- GPU: AMD Radeon iGPU (renoir) driving eDP 144Hz display + NVIDIA RTX 3060 (render offload)
- Display layout: 3 monitors vertical stack
- DP-1-0 (external Dell U2311H, 1920x1080@60, USB-C DP alt mode) — top
- HDMI-A-0 (external Dell U2311H, 1920x1080@60) — middle
- eDP (built-in laptop, 1920x1080@144) — bottom, primary
What I tried
Set only the built-in eDP to 125% fractional scale, keeping externals at 100%.
Problem 1: scale-ui-down — side effects on unscaled monitors
fractional-scale-mode = 'scale-ui-down'
- This sets
legacy-ui-scaling-factor = ceil(max_scale) = 2 globally
- All monitors get a 2x framebuffer (3840x2160)
- Result: External monitors at scale=1.0 show massively blown-up UI in non-GTK apps (Qt, Electron, Java) that don't properly handle the xrandr transform
- Also: eDP @ 144Hz struggles to render at 2x framebuffer (3072x1728) on AMD iGPU, causing stutter
Problem 2: scale-up — blurry output
fractional-scale-mode = 'scale-up'
- eDP framebuffer = 1536x864 → upscaled to 1920x1080
- Result: Noticeably blurry text/UI at only 125% scaling (1.25x upscale ratio). No side effects on external monitors, and performance is fine.
Root cause
When only one monitor in a multi-monitor setup needs fractional scaling, both modes have unavoidable downsides:
scale-ui-down: global ceil(max_scale) forces 2x framebuffer on ALL monitors
scale-up: upscaling from lower resolution produces blur
There's no mode that applies fractional scaling to only the targeted monitor while leaving others at native resolution + native framebuffer size.
Expected behavior
Ability to set per-monitor fractional scaling where unscaled monitors retain native framebuffer size and legacy-ui-scaling-factor = 1.
Workaround
Accept integer-only scaling (100% or 200%) on this hardware, or use Cinnamon Wayland (not tested — user needs X11 for remote desktop).
Environment
x11-randr-fractional-scaling+scale-monitor-framebufferenabledWhat I tried
Set only the built-in eDP to 125% fractional scale, keeping externals at 100%.
Problem 1:
scale-ui-down— side effects on unscaled monitorsfractional-scale-mode = 'scale-ui-down'legacy-ui-scaling-factor = ceil(max_scale) = 2globallyProblem 2:
scale-up— blurry outputfractional-scale-mode = 'scale-up'Root cause
When only one monitor in a multi-monitor setup needs fractional scaling, both modes have unavoidable downsides:
scale-ui-down: global ceil(max_scale) forces 2x framebuffer on ALL monitorsscale-up: upscaling from lower resolution produces blurThere's no mode that applies fractional scaling to only the targeted monitor while leaving others at native resolution + native framebuffer size.
Expected behavior
Ability to set per-monitor fractional scaling where unscaled monitors retain native framebuffer size and
legacy-ui-scaling-factor = 1.Workaround
Accept integer-only scaling (100% or 200%) on this hardware, or use Cinnamon Wayland (not tested — user needs X11 for remote desktop).