Solutions to Several Issues with Using an 8-Inch Notebook Screen on Linux

Recently, I acquired a second-hand 8-inch screen notebook, the Zwide NA08H, featuring an N150 processor, 16GB of RAM, and a 512GB SSD (replaceable M.2 2242 NVMe drive), with a screen resolution of 1920×1200.This type of small machine is super portable, but there are two pitfalls:

  1. The screen is from a TabPC, and the flash inside is written for portrait mode, typically rotated to the right. If the BIOS settings are not adjusted, both Windows and Linux installations will be rotated. Windows can fix this after installation by setting the screen rotation, but in Linux, simply setting the screen rotation does not affect the bootloader (Grub or Systemd-Boot), kernel startup console output, or the login screen, which all remain rotated.
  2. The small screen has a high resolution. In Windows, after installation, you can set the rotation and simultaneously adjust the scaling, but the scaling method in Linux is not ideal, as it makes the text appear bolder after scaling.

Below, I will summarize my related settings.Regarding screen rotation, there are actually three issues to resolve:

  1. Bootloader rotation issue: Someone has created a modified version of Grub that includes rotation settings, but I am using EndeavourOS, which defaults to Systemd-Boot. Since I do not have a dual-boot system, I set the System-Boot timeout to 0, so it is out of sight and out of mind. The configuration file is located at /efi/loader/loader.conf.
  2. Console output after kernel startup: Add the kernel boot parameter “fbcon=rotate:1”. The EFI settings for Systemd-Boot are in the conf file located in the /efi/loader/entries directory that does not have the fallback label.
  3. I am using the XFCE4 desktop with LightDM as the window manager. To rotate the login screen:

    Create the file `/etc/lightdm/greeter_setup.sh` with the following content:

    #!/bin/bash
    xrandr -o left
    exit 0

    In the `/etc/lightdm/lightdm.conf` file, find the commented line `greeter-setup-script=` and uncomment it, changing it to the following line.

    greeter-setup-script=/etc/lightdm/greeter_setup.sh

    This line is generally found in the `[Seat:*]` section.

For perfect screen scaling, using XFCE4 as an example:

  1. In the “Appearance” settings window, switch to the “Fonts” tab, where you will see an option for custom DPI. The default is usually 96, which means 96 dots per inch. If you want to scale it to 150% like in Windows, you can change 96 to 144, which is a 50% increase.
  2. In the “Window Manager” settings window, under the “Style” tab, change the “Default” style to “Default-hdpi”. The “hdpi” style is suitable for larger fonts, ensuring the window title has an appropriate height. If you want the window title to be larger to accommodate a 200% scale, you can select the “xhdpi” style. If you are not using the default style, you will need to learn how to modify style files yourself. This way, you can copy your favorite style and modify it as needed.
  3. The taskbar in Windows, called the panel in XFCE4, can be styled like Windows or Mac. Taking the Windows style as an example: in the “Panel” settings window, select “Panel 1”. In the “Display” tab under the size section, you will see the “Row Size (pixels)” setting, which is set to 34 by default. I increased it by 50% to 51. This way, the icons in the taskbar match the text size appropriately.

After these settings, the display portion of this small machine is basically adapted.

Leave a Comment