Running Manjaro linux on the ASUS G14 2023

TL;DR: Hardware specs

Laptop model

G14 GA402XI-N2020X with the RTX 4070, 16 GB of DDR5 RAM onboard and a MediaTek wifi+BT card.

Upgrades

TL;DR: The setup

I had run a dual-boot setup for a while, but Proton is working decently nowadays, and I wanted to have Full Disk Encryption without a million headaches. So I took the chance to go for an only linux setup when I recently upgraded the SSD.

If you don't mind disabling secure boot and not having full disk encryption, you can also have Manjaro + Windows 11 on the G14.

Asus Linux to the rescue

Once you've hopefully wiped Microsoft from your beautiful laptop and installed Manjaro with full disk encryption, it's time to refine your installation to be able to use all of the features this laptop offers.

I have tried several guides from all over on the interwebs, but ultimately the Asus linux community is where it's at.

They are also the ones maintaining a repository of utils that will allow you to tweak things like keyboard backlight and color, Anime Matrix if you have one, fan curves, etc.

Follow this guide and everything should be fine: https://asus-linux.org/wiki/arch-guide/

After this you should have the following utilities installed:

  1. asusctl CLI tool
  2. supergfxctl CLI tool
  3. ROG Control Center GUI tool
  1. Cap your battery charge to 60 or 80 % if you are going to be plugged to the wall all the time.

asusctl -c 60

This will prevent battery wear.

  1. Set your GPU mode to Hybrid or Integrated when on battery to increase battery runtime.

supergfxctl -m Hybrid

  1. AniMe Matrix commands

asusctl anime -e true/false to enable/disable it

  1. Set your display refresh rate to 60 Hz when not gaming to increase battery runtime

Right click on the desktop and select "Display settings", there you can change it.

Other useful apps

  1. ProtonVPN client

You will need to enable the AUR in the package manager and then install it.

  1. Spotify client (CLI)

I used the Flatpak way of installing it after enabling Flatpak support in the package manager

  1. VS Code (OSS version)

sudo pacman -Syu code

  1. Wireguard client

sudo pacman -Syu wireguard-tools

Then put your config(s) in /etc/wireguard/config/ and use

wg-quick up/down nameOfTheConfig to connect/disconnect

Custom binaries / manually downloaded apps

If you happen to have an app manually downloaded, like Firefox Developer Edition in .AppImage format, check my other quick post about adding your app to the OS launcher

The story: Background

I bought the first model of the G14 laptop from 2020, and from the beginning ran several distros on it. First Pop_OS, which at some point got so borked that I had to nuke the whole thing :'D.

Then Ubuntu, which it still runs to this day in a dual-boot setup and has support for every feature that I have needed.

I never used the fingerprint sensor on the power button so your mileage may vary there.

I also want to say, I only gamed with the windows partition on the G14 from 2020, since I was also using it for music production, so I couldn't get rid of that partition anyways.

A wild 2023 Edition appeared!

I happened to stumble upon a hefty discount for the latest model (at the time of writing this, 2023) and I couldn't help myself since I love the form factor and power of the G14 laptops.

Everyone and their mother discouraged people on the G14 subreddit when talking about running linux on the 2023 model. Instead, they pointed everyone to get last year's model which was an all AMD build and as such, natively supported on Linux distributions.

But the 40 series GPUs from NVIDIA are great, and I wanted to have a laptop with 32 GBs of RAM which my old G14 didn't support in a dual-channel configuration, so upgrading my reliable '20 version wasn't possible.

Armed with courage, I decided to bite the bullet and try to make it happen with the new model.

Enter the scene a new Linux flavor: Manjaro Linux

I had toyed a bit with Arch Linux before because of the Steam Deck, and I knew I needed a distro with bleeding edge updates so I could get full support as soon as possible for my new G14 based on how the linux support for my 2020 G14 evolved the first time around.

My friend Chrigi who has been running Manjaro for a while had talked to me about Manjaro and I got curious, so I decided to give it a try.

I shrank my Windows partition, created a big enough EFI partition and proceeded to install Manjaro in a dual-boot scenario. Also had to disable secure / fast boot on the BIOS.

Support at launch wasn't great, although most things were working. However, the quad speakers were not working, and some other minor things like the keyboard backlight weren't either. You could use headphones to work around the audio issue, but it was not ideal.

I also changed the WiFi/Bluetooth card from the MediaTek one that came with my unit, to an Intel AX210 for better compatibility although I think the MediaTek was working as well, at least when it came to WiFi performance.

Rough edges get smooth thanks to Kernel updates

Thankfully, kernels are pretty easy to change on Manjaro. You can use the Manjaro Settings Manager which has a Kernel section, where you can easily install and manage your kernels.

As soon as the Kernel 6.5.X came around, I installed it and got the audio magically working. I had been eyeing some posts in forums and Reddit for some time, but they talked about having to recompile DSDT tables and didn't dare to go through the steps myself.

Thanks to the bleeding edge nature of Manjaro, switching kernels was a breeze. Suffice to say, I have come to like Manjaro as my daily driver and don't think of coming back to Ubuntu/Pop_OS any time soon.

Extra ball: Manually picked Nvidia drivers

After this adventure, I was finally ready to play Starfield on my Manjaro+G14 setup. But some peeps on ProtonDB were saying I would need to use a custom (Vulkan) driver in order to make the game not crash.

Nvidia-all is exactly what I needed

This tool allows you to install custom drivers, like the one I needed.

Installation is easy, just follow the steps on the Github repository

I ran the tool, which guided me through a series of choices to select the driver and a reboot later, Starfield was working great :)

And now finally, I can explore space...

or just enjoy magnificient bugs :P