7 ms·
NixOS on a Tuxedo InfinityBook Pro 14 Gen9 AMD Laptop
- rgoulter 1y agoThe author mentions it in the conclusion, but I think "nix package manager on non-NixOS Linux" would be the best of both worlds. You'd avoid the friction of having to deal with software that doesn't 'just work' on NixOS, but still be able to make use of things like devenv. Though, an understated benefit from using NixOS is that the specific fixes taken are now available "as code".
- beepbooptheory 1y agoOne would think so but then you find out even more issues crop up with certain software.. Maybe things have changed but I found that anything that relied on opengl and such would need special workarounds to run on non-NixOS when I tried. This was perhaps only an issue with launching from nix shell.. but it caused enough friction for me that I ended up switching. It's much easier to use, e.g., steam-run/appimage-run/nix-alien/plain-ole-npx for all special cases on NixOS than the vice-versa issues on non-NixOS imho.
- dangus 1y agoI feel like the Atomic Linux approach is already a better fit for desktop usage. Flatpaks for most user software along with other options to install packages with different methods if there are special/legacy requirements. I think the only negative aspect of the approach is the sheer quantity [1] of package installation options available. [1] https://docs.bazzite.gg/Installing_and_Managing_Software/ https://docs.bazzite.gg/Installing_and_Managing_Software/
- mhitza 1y agoFlatpak makes it very hard to see who packages what. There are apps that look official, buy are built in third-party repositories. With distributions packages, there's a bigger barrier to entry which is at least better in avoiding sneaky malware from easily creeping in.
- tom89999 1y agoBut its used to create the illusion that linux can be used by typing handymen.
- dangus 1y agoFor one thing, barrier to entry is not a security feature. Malware has made its way into paid app stores. I think someone running Linux wants low barrier to entry as a reason to use the system. They want a system built by communities and not by corporations with walled garden toll booth business models. But this point is extremely weak either way when you compare to the Windows barrier to entry which is effectively zero. Or you can compare flatpak to Mac users installing software with Homebrew. I think if you look at flathub there are very good explanations on each piece of software regarding whether the author is verified, what the license and code availability status of the package is, and which permissions are being used when installed. It seems to use relatively strong language to describe permissions features as potentially unsafe.
- akimbostrawman 1y agoFlathub is VERY transparent which packages are not verified and unlike system packages they come with sanboxing which if correctly configured (also transparently displayed) can mitigate malicious access.
- xorcist 1y agoFlatpaks are a potential security disaster where people learn to install software of questionable provenance, not much different from other desktop operating systems where users learn to click past the warning to install binaries found on random web pages.
- dangus 1y agoI feel like flathub and many App Store-like programs that install flatpaks do a good job showing app permissions, whether the apps are OSS, and whether the developer is verified. I don’t see how it’s significantly different than the status quo on Windows/Mac.
- akimbostrawman 1y agoPeople will do that anyways if not from 3rd party repos like incredibly popular AURs or PPAs then good old curl | sh. Flatpaks at least have a sandbox that can be easily configured to protect the user, does not require elevated privileges and get some limited vetting on flathub. Not to mention additional security feature like portals.
- xorcist 1y agoThe whole point of NixOS is to make packages a special case of configuration. Running nix elsewhere doesn't do that and for configuration there are more mature tools. It would be like using Ansible(/Salt/Puppet or other similar tools) without any of the upside those have. Don't be afraid to use those tools though, they're great.
- Ericson2314 1y agoThat is the whole point of NixOS, but NixOS is not the whole point of Nix. I personally think these issues sound one-off to me, and sticking with NixOS should be fine. But other OS + home manager is completely valid and a great way to use Nix more casually.
- Propelloni 1y agoYou could take a look at guix [1], it's very much like nix, but is available as a package manager for other distros. [1] https://guix.gnu.org/ https://guix.gnu.org/
- Cu3PO42 1y agoGuix is also a great project and I don't want to dissuade anyone from using it, but Nix can also be used as a package manager only.
- eikenberry 1y agoDoes it allow you to install/run graphical apps that require GPU access? That's my biggest annoyance right now with using Nix packages on my Debian (stable) system, they just don't work for everything.
- microtonal 1y agoYou can often set up /run/opengl-driver to mirror NixOS and it will work. For instance for CUDA: https://danieldk.eu/Nix-CUDA-on-non-NixOS-systems#make-runopengl-driverlib-and-symlink-the-driver-library https://danieldk.eu/Nix-CUDA-on-non-NixOS-systems#make-runop...
- Ericson2314 1y agoNobody switched to Guix for easier driver support lol
- jowea 1y ago> You'd avoid the friction of having to deal with software that doesn't 'just work' on NixOS I'm not sure what type of software you're talking about, but Linux native software usually works with 'steam-run', which is really the "pretend to be Ubuntu" command.
- throitallaway 1y agoSoftware that has only dynamically linked binaries available for it (and no source) are one such example. The main Azure CLI tool is built in Python but it downloads binaries for certain actions on the fly if it needs them. These are a major PITA (or impossible) to get working correctly on NixOS.
- tombert 1y agoI agree it's annoying, though if you need dynamically linked stuff, there's always the FHS environments [1]. You can also do an FHS shell if you don't want to make a package. There's also nix-ld [2], which allows you to directly run unpatched binaries. [1] https://github.com/NixOS/nixpkgs/blob/master/pkgs/by-name/bi/bigpemu/package.nix#L29 https://github.com/NixOS/nixpkgs/blob/master/pkgs/by-name/bi... [2] https://search.nixos.org/options?channel=unstable&show=programs.nix-ld.enable&from=0&size=50&sort=relevance&type=packages&query=nix-ld https://search.nixos.org/options?channel=unstable&show=progr...
- rgoulter 1y ago> I'm not sure what type of software you're talking about... The original post mentions several examples where he ran into friction. (Monitoring/tracking software, pinentry-kwallet, playwright, tableplus). A popular escape hatch for NixOS (or other immutable distros) for commandline tools is distrobox. https://github.com/89luca89/distrobox https://github.com/89luca89/distrobox Another good tip mentioned on the NixOS wiki FAQ is nix-ldd with the dependencies from steam-run. Still. The benefit of having a declared system configuration does come with the cost of having to put in that effort up front; and a steeper learning curve for knowing how to get around those difficulties compared to more typical distros.
- tombert 1y agoA lot of people say this, but honestly this kind of sounds like someone who doesn't understand the ethos around NixOS. NixOS isn't just a vanilla Linux distro with Nix preinstalled The whole point of NixOS is that the entire system is managed by Nix. The entirety of everything is declarative in your configuration file(s) and the entire system can consistently be rebuilt from the configuration. The root system is immutable after being built and as such it is trivial to snapshot. This isn't just a trivial implementation detail, it changes the entire way that you use the computer. Boot parameters, drivers, installed programs, everything is done via configuration, as opposed to installing Nix on Ubuntu where most stuff is still managed haphazardly and mutably. You might not think that's good or worth it, but I dispute the notion that installing Nix on a non-NixOS distro gives you the "best of both worlds". They're very different things.
- rgoulter 1y agoOP had a situation where software he wanted to run didn't work with NixOS. If OP wanted the benefits of the Nix package manager (e.g. per-project development environments, using Nix to build container images, etc.), and didn't want the friction of "how do I run this software on NixOS", I think it's straightforward that using Nix on a non-NixOS distro is a practical choice.
- rowanG077 1y agoUsing nix on non-NixOS definitely has benefits, I don't think that's disputed. But it's not "the best of both worlds" as the things NixOS gives are immense and not at all fully provided by just using nix on another OS.
- j0hax 1y agoInteresting to see someone writing a blog post and explaining issues they've encountered with their laptop, I participate in the official repository of Nix configurations covering these kinds of hardware quirks [1]. I also have a InfinityBook Pro 14 Gen 9 (Intel Version) and began adding support for this laptop in NixOS Hardware in early March of this year, including settings sane defaults, loading drivers, and even refactoring/backporting modules for other InfinityBook versions. [1]: https://github.com/NixOS/nixos-hardware/tree/master/tuxedo/infinitybook https://github.com/NixOS/nixos-hardware/tree/master/tuxedo/i...
- microtonal 1y agoGreat work! I love that NixOS makes encoding these settings so easy. 'Sadly', my T14 Gen 5 AMD worked out of the box with NixOS, so nothing to contribute :). (I see that this model is in the repo with minimal configuration.)
- k_bx 1y agoI wonder if Nix is finally OK to use with LLMs. Used to be such a pain and just hours of googling to make simple things work. I think even ChatGPT didn't work well at the time for me, but now at least the try-and-fail can be done by the LLM itself.
- schindlabua 1y agoDid the switch to NixOS a few months ago on my Thinkpad and ChatGPT worked wonders. I'm not very experienced with Linux distros and have been an Ubuntu user for a long time. I don't think I'll be switching away from NixOS anytime soon, it's great. The learning curve is still extremely steep but after the initial 10 hours of googling it just all falls into place.
- cameroncarlg 1y agoI’ve found much success using the most recent LLMs (mostly ones trained on 2024 data) for configuring nixos. It’s even pretty good at flake workflows as well!
- ar_lan 1y agoNix is fantastic with Claude Sonnet.
- microtonal 1y agoI would be a bit careful, it generates piles of Nix code that may work, but are not great. E.g. it often likes to generate imperative hacks (like setting LD_LIBRARY_PATH, etc.) that break things down the line. Use it as a teacher to learn to understand Nix deeply yourself. I would absolutely recommend everyone to start with the Nix Pills though, it's a great way to learn the language and understand the basic building blocks.
- ar_lan 1y agoHeard! I've been running NixOS as a daily driver for about 5 years so I'm somewhat comfortable with it. So far, I haven't seen many odd configurations as you suggest, but I'll keep my eye out.
- linsomniac 1y agoI'm traveling for the next couple weeks and don't want to take my home or work laptop, so I'm setting up a nice, old Chromebook with NixOS. I've dabbled with NixOS before. But this time I have been using Claude Code to set it up, and it's really good at it. Makes it painless, even without being very experienced with NixOS.
- microtonal 1y agoMotorcomm YT6801 LAN drivers Why does a Linux laptop brand ship with an Ethernet NIC (Motorcomm YT6801) that requires an out-of-tree driver? (And a hack to fix ACPI issues.) I think I know the answer, but...
- cosmic_cheese 1y agoIf I were designing a laptop specifically for Linux it’s hard to image going for anything but Intel for networking, but it’s possible Tuxedo’s ODM doesn’t give them the choice.
- pjmlp 1y agoDell XPS and Asus netbooks supposedly were designed with Linux in mind, and I had my share of wlan adventures. On Asus netbook, only the original proprietary driver from Asus worked properly, the open source replacement, always kept dying when under load, regardless of how many improvements were made to it. Something like updating Rust, instead of seconds, took minutes with all the network reconnection happening, or I had to pull the lan cable instead.
- microtonal 1y agoI guess my point is that brands like Lenovo use bog-standard Realtek and Intel NICs and they just work well out of the box. Somewhat similar with WiFi chipsets - my ThinkPad uses a standard Qualcomm chipset and it works without any issues. It seems like these small Linux laptop vendors do not have enough clout to ask ODMs for devices with better-supported hardware. On the other hand, there must be ODMs that use more standard hardware, no? At any rate, it creates the weird situation that it is better to purchase something like a ThinkPad if you want good Linux support. But if the Linux laptop vendors do not become large enough, they will not have enough sway over ODMs.
- pjmlp 1y agoIronically that driver I was talking about was the Qualcomm driver, Ubuntu the distribution Asus was using on the netbook I had, decided to replace the proprietary blob with the open source on, back then in its early days. Not only did we had to endure it getting feature complete, or rollback kernel updates as means to be able to use the proprietary one, it was never as stable during the last decade. Point being if not even Dell and Asus, with their might care enough for a flawless Linux experience, how can we expect better from small shops doing Linux installations on random asian models? Last year I got burned with 300 euros, buying something that was supposed to work with Linux, but only did so when using external storage via USB, booting never worked from the internal SSD drive, pity that forgot to mention that anywhere.
- thighbaugh 1y agoI too enjoy torturing myself with NixOS
- brainlessdev 1y agoAuthor here, posting a self-review. I've realized most of my blog post is not really about NixOS, it's just about this particular TUXEDO laptop requiring special tweaks to work properly. I've set up Debian 13 with Nix (plus Home Manager) in a VM to try it out and have realized that on the real laptop I would need to perform the same tweaks: install special drivers, install the TUXEDO Control Center (albeit using a supported .deb), and add those same kernel params. The only "care-free" option would be using TUXEDO OS, which I could explore. I've run NixOS on e.g. an AMD ThinkPad T14 and it was seamless, with no tweaks needed. I suppose using something other than NixOS would indeed make some things easier (in my case Vanta, `pinentry` programs, Playwright and Cypress) and would perhaps let me live a more hands-off experience. I currently run `nix flake update` on my system way too often... but other than that, NixOS is not really getting in the way, at least as far as using this laptop goes.
- phibz 1y agoExcellent write up and great real world review. You mentioned wanting to become a generalist. The missing applet for tuxedo-rs would be a great opportunity to "scratch an itch" and learn some new technology. You have some options on the language you write the applet in if you're not ready to jump in to Rust or C. Might be a great way to learn some stuff outside of web development. Good luck.
- bjackman 1y agoIt's rather bleak that these special "Linux computers" require this much fiddling. None of my laptops are sold as running Linux but all of them were easier to set up than this (only the MacBook Air 2013 required anything at all other than running the Ubuntu installer and clicking "yes").
- smackeyacky 1y agoMy experience with Linux since the 1990s has been that bleeding edge hardware is never a great choice. I've had the best experience with slightly older laptops (typically bought 2nd hand).
- antonvs 1y agoThe challenge here is installing NixOS. The ease of installing Linux on the laptops you've used is because someone else has already done this kind of work.
- deleted 1y ago[deleted]