Recently I decided to try Manjaro linux on my orp5 (System76 Oryx revision 5). I was immediately impressed by the somewhat minor convenience of installing with btrfs as a gui option instead of having to drop to manual provisioning to set this up as I did in PopOS. Not a big deal, but it was something.
Manjaro is a “user-friendly” version of Arch Linux. I’m not an Arch user but being an old Gentoo user I’m not unfamiliar with the ‘roll your own’ method of Linux setup though Manjaro does a good job at ‘just working’. Most things worked pretty well for me out of the box. Pacman was simple enough to get used to, I read about and decided on ‘yay’ as my AUR UI as it was most similar to pacman in usage which meant learning only one new package management tool. Initial changes I made were pretty minimal but two stood out as they were things I really wanted and didn’t immediately know how to do.
- Enable systemd-resolved.service
- Change from hybrid graphics to dedicated nvidia
Systemd-Resolved
Why bother using this instead of the default resolver? For me it is the convenience of using resolvectl to control dns servers and search domains. In my wireguard configuration files I use a Postup command to add dns/search domains to a few different VPN’s and the limitations of the default resolver made this somewhat difficult.
Once enabling systemd-resolved you need to remove the [!UNAVAIL=return] option after “resolve service” in the file /etc/nsswitch.conf”‘s host line in order to allow local dns resolution or the resolver won’t forward through properly.
Dedicated NVidia
This was a little more tricky than I wanted. Out of the box, after installing the video-nvidia driver exteranl displays worked fine. I did ultimately I ended up having the same issues with Manjaro that I did with PopOS and SDDM on the internal display though. I needed to add two lines to /usr/share/sddm/scripts/Xsetup:
xrandr --setprovideroutputsource modesetting NVIDIA-0
xrandr --auto
Changing to the dedicated NVideo card drivers can be done with these commands:
mhwd -r pci video-hybrid-intel-nvidia-prime && mhwd -i pci video-nvidia
And flip them to go back to hybrid graphics. I don’t know if it is required but I did setup my /etc/X11/xorg.conf.d/90-mhwd.conf file to limit it to:
Section "Module" Load "modesetting" EndSection Section "Device" Identifier "nvidia" Driver "nvidia" BusID "PCI:1:0:0" Option "AllowEmptyInitialConfiguration" EndSection
I also added a file /etc/modprobe.d/nvidia-drm.conf:
options nvidia_drm modeset=1
Results
Before changing to the dedicated nvidia card my built in display performance in KWin with compositing was just fine. Games under steam (I only tried one) ran perfectly and used the nvidia card as the hybrid setup is intended to. Where I had problems was when plugging in external displays. The desktop would be noticeably laggy with two external monitors performing compositing with the intel card. On the nvidia it works fine. However, glxgears testing using prime-run v/s having X11 use the dedicated nvidia card yielded surprising results. I get about 17% fewer FPS when my desktop runs through the nvidia than when using prime-run. It may be enough to warrant disabling compositing under kde and running hybrid drivers but experimentation will tell.
In addition to the changes to the system I’m also trying out zsh for my shell. It’s what all the young kids are using these days I guess, and MacOS is using it as their default shell apparently as well. Konsole launched with zsh by default (though my user shell is still bash). I really like the git plugin for repo info at a glance but we’ll see if I stick with it. Bash for over 25 years will be a hard habit to break.