How to Change HiDPI Scaling on Linux

HiDPI (High Dots Per Inch) displays have become more common in recent years, offering higher resolution and sharper images.

Table of Contents

HiDPI (High Dots Per Inch) displays have become more common in recent years, offering higher resolution and sharper images. However, sometimes the text and icons can appear too small, making it difficult to read and interact with. Fortunately, Linux offers a way to adjust HiDPI scaling settings to make the display more readable. In this guide, we will show you how to change HiDPI scaling settings on Linux.

Using xrandr

xrandr is a command-line tool used in Linux to interact with the X11 display server and manage the screen resolution, refresh rate, rotation, and other display settings. The tool allows users to add, remove, and modify display modes, adjust the position of displays, and change the screen orientation.

The xrandr tool is often used to configure multi-monitor setups, including setting the relative position and orientation of the displays. It can also be used to adjust the scaling of HiDPI displays to make them more readable.

The xrandr tool is included in most Linux distributions by default and can be accessed from the command line. It provides a simple and powerful way to manage display settings without requiring a graphical user interface.

Step 1: Open Terminal

Open the terminal by pressing Ctrl + Alt + T on your keyboard or by searching for it in the applications menu.

Step 2: Install xdpyinfo

On Debian/Ubuntu-based distros, run:

sudo apt install x11-utils

On Fedora/RPM-based distros, run:

sudo dnf install xorg-x11-utils

On Arch-based distros, run:

sudo pacman -S xorg-xdpyinfo

Step 3: Check Display Density

Next, check the display density or PPI (Pixels Per Inch) of your display. To do this, run:

xdpyinfo | grep -B 2 resolution

This will display the resolution and density of your display in pixels per inch (PPI).

Step 4: Install xrandr

On Debian/Ubuntu-based distros, run:

sudo apt install x11-xserver-utils

On Fedora/RPM-based distros, run:

sudo dnf install xorg-x11-server-utils

On Arch-based distros, run:

sudo pacman -S xorg-xrandr

Step 5: Adjust Scaling Settings

Once you have determined your display resolution and density, you can adjust the scaling settings. The scaling settings can be adjusted using the xrandr command.

To adjust the scaling settings, run:

xrandr –output [OUTPUT NAME] –scale [SCALE FACTOR]x[SCALE FACTOR]

Replace [OUTPUT NAME] with the name of your display (e.g., eDP-1) and [SCALE FACTOR] with the scaling factor you want to use (e.g., 1.5). The scaling factor determines how much to increase the size of text and icons. To get the name of your display, run:

xrandr

This command will display information about the current display configuration, including the available outputs and their names.

For example, to set the scaling factor to 1.5 on a display named eDP-1, run:

xrandr –output eDP-1 –scale 1.5×1.5

Step 6: Make Scaling Settings Persistent

Once you have adjusted the scaling settings to your liking, you can make them persistent so they are applied every time you start your Linux desktop.

To do this, create a new file called .xprofile in your home directory, if it does not already exist, and add the following line to the file:

xrandr –output [OUTPUT NAME] –scale [SCALE FACTOR]x[SCALE FACTOR]

Replace [OUTPUT NAME] and [SCALE FACTOR] with the values you used in step 5.

For example, if you used a scaling factor of 1.5 on a display named eDP-1, you would add the following line to the .xprofile file:

xrandr –output eDP-1 –scale 1.5×1.5

Save the file and restart your Linux desktop to apply the changes.

Using wlr-randr

If you are running a Linux distribution with a Wayland display server, you may not be able to use xrandr to adjust your HiDPI scaling settings. Instead, you can use wlr-randr, a tool specifically designed for Wayland, to change your scaling settings.

Step 1: Open Terminal

Open the terminal by pressing Ctrl + Alt + T on your keyboard or by searching for it in the applications menu.

Step 2: Install xdpyinfo

On Debian/Ubuntu-based distros, run:

sudo apt install x11-utils

On Fedora/RPM-based distros, run:

sudo dnf install xorg-x11-utils

On Arch-based distros, run:

sudo pacman -S xorg-xdpyinfo

Step 3: Check Display Density

Next, check the display density or PPI (Pixels Per Inch) of your display. To do this, run:

xdpyinfo | grep -B 2 resolution

This will display the resolution and density of your display in pixels per inch (PPI).

Step 4: Install wlr-randr

On Debian/Ubuntu-based distros, run:

sudo apt install swaybg wlr-randr

On Fedora/RPM-based distros, run:

sudo dnf install wlr-randr

On Arch-based distros, run:

sudo pacman -S swaybg wlr-randr

Step 5: Adjust Scaling Settings

Once you have determined your display resolution and density, you can adjust the scaling settings using wlr-randr. To do this, run:

wlr-randr –output [OUTPUT NAME] –scale [SCALE FACTOR]

Replace [OUTPUT NAME] with the name of your display (e.g., eDP-1) and [SCALE FACTOR] with the scaling factor you want to use (e.g., 1.5). The scaling factor determines how much to increase the size of text and icons. To get the name of your display, run:

wlr-randr

This command will display information about the current display configuration, including the available outputs and their names.

For example, to set the scaling factor to 1.5 on an output named HDMI-A-1, run:

wlr-randr –output HDMI-A-1 –scale 1.5

Step 6: Make Scaling Settings Persistent

Once you have adjusted the scaling settings to your liking, you can make them persistent so they are applied every time you start your Linux desktop.

To do this, create a new file called .config/wlr-randr.sh in your home directory and add the following lines to the file:

#!/bin/sh
wlr-randr –output [OUTPUT NAME] –scale [SCALE FACTOR]

Replace [OUTPUT NAME] and [SCALE FACTOR] with the values you used in step 5.

For example, if you used a scaling factor of 1.5 on an output named HDMI-A-1, you would add the following lines to the .config/wlr-randr.sh file:

#!/bin/sh
wlr-randr –output HDMI-A-1 –scale 1.5

Save the file and make it executable by running:

chmod +x ~/.config/wlr-randr.sh

Finally, add the following line to your Wayland startup file (e.g., ~/.bashrc or ~/.xinitrc) to ensure the script runs every time you start your desktop environment:

sh ~/.config/wlr

Conclusion

In conclusion, if you are using a high-resolution display with Linux, adjusting the scaling settings can make a significant difference in the user experience. We’ve shown you two tools, xrandr and wlr-randr, that can help you easily adjust your HiDPI scaling settings. While xrandr is suitable for systems running the X server, wlr-randr is specifically designed for Wayland display servers. Regardless of which tool you choose to use, make sure to determine your display resolution and density first, and then experiment with different scaling factors until you find the best setting for your needs. Don’t forget to make your scaling settings persistent so that they apply every time you start your desktop environment. With these tips, you can enjoy a better Linux experience on your HiDPI display.

Please Leave Feedback in the Comments

More to Explore

Leave a Reply

Search

Type in a question or keyword below
Search

FAQ

Questions and Answers
Who is MALIBAL?

MALIBAL is an innovative technology company that produces high-performance, custom Windows laptops and Linux laptops for developers and content creators; mobile workstations for engineers, scientists, video editors, 3D modelers, and animators; and mobile servers for enterprise applications.

More

Why MALIBAL?

In a marketplace dominated by large corporations, MALIBAL offers a refreshing alternative that focuses on open-source support, the right to repair, hardware integration in the USA, personalized US-based customer support, and the unique combination of customization and high-performance technology in sleek, user-friendly designs.

More

Are all the parts soldered to the motherboard?

In many modern laptops, especially thin and light models (like Apple’s MacBook Air or Pro, Dell’s XPS 13, or many of Lenovo’s ThinkPad X1 Carbon models), the memory, storage, battery, and wireless module are often soldered directly onto the motherboard.

However, as part of our commitment to the Right to Repair Movement, the memory, storage, battery, and wireless module on all MALIBAL laptops are user-upgradeable or user-replaceable.

Can your laptops be charged or powered via USB-C?

All MALIBAL laptops can be powered via the Thunderbolt 4 port.

Do any of your laptops support coreboot?

We attempted to port coreboot to our laptops, but due to the terrible experiences with had with the consultants, contributors, and leaders at the coreboot project, we were unable to successfully complete the port.

More

How do I get a quote?

If you need a quote for any reason, e.g., to submit to accounting for approval, before ordering, simply add the laptop(s) you want to purchase to the Cart, then click Checkout, and on the checkout page, click Convert Cart to Quote. We will email you a PDF of the quote with a link to make payment once you are ready to complete the order.

How do I cancel an order?

You may cancel an order any time up until it ships. After it ships, you will not be able to cancel it, but will instead have to use our return policy in order to return the laptop for a refund. To cancel an order, simply open a sales ticket or sales chat and give the representative your order information, and they will cancel the order for you and send you confirmation via email and text.

How do I make a change to my order?

You may make changes to your order up until it ships. To modify an order, simply open a sales ticket or sales chat and give the representative your order information and specify which changes you want to make.

When is my order shipping?

If all parts are in stock, the average build time for laptops is 5-7 business days. This means laptops will ship 5-7 business days after the order is placed. If a component is backordered, it will say which parts are backordered in your order confirmation email.

To see the estimated delivery date of your laptop, please check your order confirmation email for the Estimated Delivery Date. You can also see this information on your My Account > Order Details page. The estimated delivery date is the build time (plus backorder delay, if applicable) plus the shipping time.

Once your laptop ships out, we will email you the tracking information. An adult will need to be at the address to sign for the package when it arrives.

How do I track my order after it ships?

You can view your tracking status via the order details page in your account.