# betterScale - a better way to scale on x11 (gnome/budgie)

**URL:** <https://discourse.ubuntubudgie.org/t/betterscale-a-better-way-to-scale-on-x11-gnome-budgie/5641>\
**Category:** Budgie Desktop\
**Created:** [January 10, 2022, 2:07am UTC](https://discourse.ubuntubudgie.org/t/betterscale-a-better-way-to-scale-on-x11-gnome-budgie/5641 "2022-01-10T02:07:27Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![rbreaves](https://yyz1.discourse-cdn.com/flex035/user_avatar/discourse.ubuntubudgie.org/rbreaves/32/3871_2.png) [@rbreaves](https://discourse.ubuntubudgie.org/u/rbreaves)\
**Post date:** [January 10, 2022, 2:07am UTC](https://discourse.ubuntubudgie.org/t/betterscale-a-better-way-to-scale-on-x11-gnome-budgie/5641/1 "2022-01-10T02:07:27Z")

</div>

For those that are interested. I basically wrapped up xrandr & the experimental GDK WindowScalingFactor feature so that people don’t have to decipher how to make it work well. You run the script, select the scale you want and it is that simple.

> **[GitHub - rbreaves/betterScale: Better Scale helps Gnome & Budgie x11...](https://github.com/rbreaves/betterScale)**
>
> Better Scale helps Gnome & Budgie x11 users perfectly scale their desktop. - GitHub - rbreaves/betterScale: Better Scale helps Gnome & Budgie x11 users perfectly scale their desktop.

Screenshot of betterScale  
[![](https://i.imgur.com/u1zuBli.jpg) ](https://i.imgur.com/u1zuBli.jpg)

[https://www.reddit.com/r/UsabilityPorn/comments/ryo099/1920x1080\_monitor\_w\_2880x1800\_macbook\_perfectly/](https://www.reddit.com/r/UsabilityPorn/comments/ryo099/1920x1080_monitor_w_2880x1800_macbook_perfectly/)

This thread below was an earlier attempt, but betterScale will soon make it irrelevant because I will be implementing xeventbind in a future release and all the stuff I said in this thread will simply be convoluted and needlessly complicated in comparison.

> [@Ubuntu Budgie 20.04 Fractional HiDPI for x11](https://discourse.ubuntubudgie.org/t/ubuntu-budgie-20-04-fractional-hidpi-for-x11/4777):
>
> Fractional HiDPI may work better under Wayland - however if the applications you use works best under X11 vs Wayland then this guide may be for you! (Also to note - I completely ignore the fractional scaling options in the Display menu because they do not work for my system.) If you apply fractional HiDPI under X11 and suspend your laptop by closing your lid then you will quickly find out that Ubuntu Budgie 20.04 does not keep your xrandr scaling settings. This guide will fix that issue. The …

---

<div class="post-metadata">

**Author:** ![fossfreedom](https://yyz1.discourse-cdn.com/flex035/user_avatar/discourse.ubuntubudgie.org/fossfreedom/32/1405_2.png) [@fossfreedom](https://discourse.ubuntubudgie.org/u/fossfreedom)\
**Post date:** [January 10, 2022, 7:49am UTC](https://discourse.ubuntubudgie.org/t/betterscale-a-better-way-to-scale-on-x11-gnome-budgie/5641/2 "2022-01-10T07:49:51Z")

</div>

Congrats!

We have an opportunity… yes that dreadful management word

Budgie will have its own budgie-control-center which is a fork of gnome-control-center with all the gnome specific bits removed.

What we could do is pull in the Canonical specific scaling patch to make it show in the Displays tab.

We could then replace the bit that calls out with xrandr with a callout to your script.

Obviously that is hi-level stuff … but if you can imagine your script that has a bunch of parameters fulfilled from the revised tab. From memory scaling percentage and I am guessing monitor id. Maybe a bunch of other stuff. The script will need to cope with 100% which effectively means to return to the status quo.

If you would like to work together then let me know. I am tidying up the fork at the moment and I hope to have a jammy compatible version soon to start working from.

---

<div class="post-metadata">

**Author:** ![rbreaves](https://yyz1.discourse-cdn.com/flex035/user_avatar/discourse.ubuntubudgie.org/rbreaves/32/3871_2.png) [@rbreaves](https://discourse.ubuntubudgie.org/u/rbreaves)\
**Post date:** [January 10, 2022, 8:00am UTC](https://discourse.ubuntubudgie.org/t/betterscale-a-better-way-to-scale-on-x11-gnome-budgie/5641/3 "2022-01-10T08:00:45Z")

</div>

That sounds great! I am working on bringing in multi monitor support and will hopefully have that done some time this week. I will have to ask the user how many rows and columns they plan to have then have them decide each monitor position.

I plan to just lay things out in a grid, if they want to tweak it beyond that then I guess there can be some sort of nudge option, but initially I just want to lay things out in a grid & left, right, center (left to right numerically - if multiple centers).

And yes, already worked out how to use gxmessage to let users definitively know which monitor is which in a similar fashion as what Windows does when a user clicks on “Identify monitors”.

I will definitely work on modularizing it all into separate functions and params so that a GUI can make calls to it more easily.

---

<div class="post-metadata">

**Author:** ![rbreaves](https://yyz1.discourse-cdn.com/flex035/user_avatar/discourse.ubuntubudgie.org/rbreaves/32/3871_2.png) [@rbreaves](https://discourse.ubuntubudgie.org/u/rbreaves)\
**Post date:** [January 12, 2022, 4:40am UTC](https://discourse.ubuntubudgie.org/t/betterscale-a-better-way-to-scale-on-x11-gnome-budgie/5641/4 "2022-01-12T04:40:25Z")

</div>

@fossfreedom Added autorandr… such an amazing tool, it saves, loads, and auto re-applies x11 xrandr settings all on its own and very reliably so. Definitely a big help and time saver. Still need to add the ability to accept args and multi-monitor.

I may also write a system tray app to allow users to quickly change resolutions (scaled or not), much like the free tool RDM for macOS users, SwitchResX (commerical macOS app) or Ultramon (commercial app for Windows).

Really am quite happy with this development and finding autorandr… I would love to be able to give family and friends laptops or desktops with linux pre-installed, but one of the reasons I haven’t is because I never felt like I had a good enough handle on being able to set the exact resolution, or the person I would give it to any ways. Everyone has their own preference and I felt like Windows or macOS would work better for the most average users for that reason alone.

If things look or feel off in some way, even due to a screen resolution issue then that to me would be enough to prevent new users from taking it seriously.

---

<div class="post-metadata">

**Author:** ![rbreaves](https://yyz1.discourse-cdn.com/flex035/user_avatar/discourse.ubuntubudgie.org/rbreaves/32/3871_2.png) [@rbreaves](https://discourse.ubuntubudgie.org/u/rbreaves)\
**Post date:** [January 12, 2022, 5:42am UTC](https://discourse.ubuntubudgie.org/t/betterscale-a-better-way-to-scale-on-x11-gnome-budgie/5641/5 "2022-01-12T05:42:46Z")

</div>

Just had the thought of still combining xeventbind with autorandr - if a new monitor is attached then maybe track whether or not a 2nd monitor refresh occurs on a setup that does not have a saved profile in autorandr. I feel like that would be an indicator that the user repositioned or changed the initial setting for that monitor and they may want to save that as a profile that can or will be remembered.

It’s a thought any ways. I don’t want to bother users with a popup on an initial event for a new monitor - if it already gets handled correctly on the first try then apparently there is no need to save that config in the first place.

Might be possible to fork autorandr as well and let it handle it all.
