cross-posted from: https://lemmy.ml/post/16072674

I’ve been quite happy with my Steam Deck - both as a gaming console and as a secondary computer when it’s docked, but for newer titles I picked up a Rog Zephyrus M16 (2023) last year.

Now that Windows is going off the deep end with AI, I’m looking to dual boot/trial Linux on this laptop with the goal to give Microsoft the boot.

It’s a beefy laptop:

  • 13th Gen i9-13900
  • 32GB Memory
  • NVIDIA GeForce RTX 4070
  • 1TB NVMe (Windows)
  • 2TB NVMe (Linux)

I added the second drive to avoid any issues with dual-booting with Grub/Windows Bootloader - instead making the Linux device the primary boot device and spamming Esc if I want to change to the Windows drive.

For distributions, I’m most familiar with Debian/Ubuntu - it’s the daily driver for my work laptop, and the vast majority of my home lab VMs are Ubuntu. With the Steam Deck, I started to get more into Arch with the Steam Deck, and now it’s the OS of choice for my HTPCs for simple streaming/Plex media player. I’ve also messed around with ZorinOS (basically a fancy skinned Ubuntu).

I need some advice on what to throw on this laptop - and some suggestions on how to squeeze the best performance out of this (Optimus vs. Proprietary NVIDIA vs. Open source drivers).

  • d3Xt3r@lemmy.nz
    link
    fedilink
    arrow-up
    5
    ·
    edit-2
    7 months ago

    Bazzite. Here’s why:

    • Optimised for gaming (gaming optimised kernel, common tweaks pre-applied, all common gaming apps pre-installed like Steam, Mangohud etc)
    • All necessary drivers pre-installed (game controllers, RGB, and even proprietary nVidia)
    • A Steam-Deck like gaming experience, if you want (the Deck variant boots directly to Steam)
    • Immutable and atomic (image-based OS updates, so updates either work or don’t - there’s no chance of a broken state)
    • Easy rollbacks (just select the previous image in the GRUB menu)

    But since you said:

    how to squeeze the best performance out of this

    and if you’re really serious about squeezing the best performance, then check out the Arch-based CachyOS - unlike most other Linux distros, Cachy has optimised x86-64-v3 and v4 packages in their repos, which means apps can make use of advanced CPU instructions such as SSE3, AVX512 etc. Most other Linux distros on the other hand still use x86-64-v1 for compatibility reasons, which unfortunately means that you’d be missing out on all the cool new optimised CPU instructions introduced over the past 16 years.

    You can read more about microarchitecture levels (aka MARCH) here: https://en.wikipedia.org/wiki/X86-64#Microarchitecture_levels

    In addition to the MARCH, Cachy’s packages have other optimisations such as LTO/PGO, optimised kernel with the BORE and Rusty schedulers which are better for gaming, plus several performance-oriented tweaks which you’d otherwise have to do manually on Arch (such as makepkg.conf tweaks, pacman.conf tweaks etc).

    Finally, Cachy are always on the bleeding edge when it comes to gaming/driver/kernel/performance related stuff, so you’ll get all the good stuff even before Bazzite or other optimised distros. For instance, Cachy was the first distro to include the new nVidia driver which has explicit sync support for better Wayland compatibility, and they’re always on top of major Arch developments and provide detailed announcements which are relevant to gamers and performance freaks.

    Eg, here’s their recent recent nVidia announcement:

    Hi @here,

    as you maybe noticed, we have rolled out the new NVIDIA Driver, which includes the explicit sync protocol and tearing for Vulkan. We have been prioritized to move this forward to finally resolve the wayland situation. Additionally arch has pushed CUDA to 12.5, which is NOT compatible with the current 550 driver (it needs the 555 Driver).

    The beta driver is not perfect, but so far we are applying some fixes to avoid issues and restore performance problems with disabling the GSP Firmware load. This is handled via the “cachyos-settings” package.

    Anyways, since some people maybe have problems with this driver, here is a short instruction to manually downgrade and block the driver:

    […]

    If you are facing issues with the new NVIDIA Driver, reproduce the issues and then run “sudo nvidia-bugreport.sh” and report it to their forum: https://forums.developer.nvidia.com/c/gpu-graphics/linux/148

    We are also shipping now an precompiled nvidia-open module. This will be also as default installed for users, which have supported cards as soon NVIDIA releases the 560 drivers.

    The CachyOS Team

    So as you can see, they’re pretty on to it with this sorta stuff.

    Now the Bazzite team are also like the Cachy guys and keep up with this stuff, but because they’re based on Fedora, they can’t be as bleeding edge or as optimised as Arch. So it’s up to you - if you prefer stability, a primarily gaming-focused optimisations, and want something that “just works” then get Bazzite; or if you want an ultra-optimised distro to squeeze out the most performance out of your box but also don’t mind ocassionally diving into the terminal and getting your hands dirty, then get CachyOS.

    cc: @01189998819991197253@infosec.pub

    • yala@discuss.online
      link
      fedilink
      arrow-up
      2
      ·
      edit-2
      7 months ago

      Excellent contribution. Even if I’m not OP, I really appreciate this. Thank you!

  • rtxn@lemmy.world
    link
    fedilink
    English
    arrow-up
    1
    ·
    7 months ago

    Linux Mint if you want a “just works” distro that isn’t Ubuntu. It’s Ubuntu-based, but with a better desktop and no snap.

    Nobara if you want a distro that focuses on gaming. It’s Fedora-based and maintained by Glorious Eggroll, known for his custom Wine and Proton forks.

    If you want Arch, just use Arch. It’s much less of a bitch to install with the archinstall script compared to earlier releases. EndeavourOS is another option – basically Arch, but preconfigured with a desktop and a graphical installer.

    • gusgalarnyk@lemmy.world
      link
      fedilink
      arrow-up
      1
      ·
      7 months ago

      I’m currently deciding between nobara and vanilla arch, coming from windows (but am a software engineer). I like arch because, as I understand it, its lighter and more customisable. I also like that it’s not corporate driven which potentially has conflict of interests (which I’m to understand red hat might). My biggest worry though is how much time I may spend maintaining an arch desktop and the possibility of hitting fail states too frequently. Obviously I can overcome some of that with good a good backup system, but I’d like to spend less nights working on my desktop and more time working on projects my desktop should enable. So I’ve been recommended Nobara as still cutting edge but more stable.

      If anyone has some strong recommendations or thoughts I’d appreciate it. I think sticking as close to main is important and if fedora really does introduce issues I can always jump ship to arch or Debian after I’ve gotten my feet wet - but I’d like to not for as long as possible.

      • Enjoying Kink@mstdn.social
        link
        fedilink
        arrow-up
        1
        ·
        7 months ago

        @gusgalarnyk @rtxn hi! Started my journey (this time, tried a few distros end of the nineties and landed at Debian then) with Fedora, and the quickly switched to Nobara. Had some issues which brought me on to currently running Garuda (IT was my hardware, not the distros…). Nobara is definitely a solid choice. Haven’t tried direct Arch yet.

  • RayOfSunlight@lemmy.world
    link
    fedilink
    arrow-up
    1
    ·
    edit-2
    7 months ago

    I highly recommend Linux Mint, foe the most important reasons:

    • The Driver manager allows you to install any non-libre drivers you’re missing from the internet

    • Comes with Flatpak already set up

    • It counts with LiveCD(Like Ubuntu) to test the distro before installing it, you want to spend some time here before you fully commit

    Also, watch this video before switching to Linux, it’s the most honest.

    https://www.youtube.com/watch?v=fvkc5WzciHw

  • Scrubbles@poptalk.scrubbles.tech
    link
    fedilink
    English
    arrow-up
    1
    ·
    7 months ago

    This is a great time to try!

    Personally, I was in the same boat. I have landed on Pop! OS for my daily driver: https://pop.system76.com/

    I dealt with Ubuntu, trying to get NVIdia drivers to work, no native flatpak, etc etc. PopOS has an NVidia version with the drivers baked in already, and apps just… work. It has been the lowest annoyance distro I’ve ever used, and I can’t recommend it enough.

    (I do gaming, AI stuff, coding, pretty much anything I’ve had to do Pop! has done a great job)

  • KISSmyOSFeddit@lemmy.world
    link
    fedilink
    arrow-up
    1
    ·
    edit-2
    7 months ago

    I’d go with Arch, or EndeavourOS if installing Arch isn’t your idea of fun.
    It gets the newest drivers first and the AUR includes basically every software available for Linux.
    Go with KDE, since it’s much saner than Gnome, and use the proprietary nVidia drivers. Anything else will limit your performance.

    Don’t worry about sudden breakage, that’s a thing of the past. A good practice is to put the following in your .bashrc:
    alias update="yay -Pw ; sudo pacman -Syu ; yay -Syu ; sudo find /etc -name *.pac*"
    then use the update command to update. yay -Pw shows all new items in the Arch news since your last update. A couple times a year there are messages about updates requiring manual intervention in there.
    sudo pacman -Syu ; yay -Syu updates the Arch packages first, then the AUR packages. Seperating these is good in case there are dependency issues. That way, your base system still updates fine, even if the dependencies of an AUR package are out of sync. (This never happened to me in 10 years, but I do it out of principle)
    sudo find /etc -name *.pac* lists all config files where there’s a new version available, but your old config wasn’t overwritten cause you’ve changed that manually.
    (You can get even more fancy with updating your mirrorlist first, always checking for keyring updates first, checking for orphaned or abandoned packages, etc. but lastly, system maintenance can never be fully automated)
    (If this seems too complicated, you’ll be happier with a different distro)

  • Titou@sh.itjust.works
    link
    fedilink
    arrow-up
    1
    ·
    6 months ago

    SteamOS is based on Arch, if you want a similar experience you can either install Arch or any others Arch-based distros.