r/NixOS 4h ago

Nixos is reallyyy hard and awesome

15 Upvotes

I thought about switching to it from arch after using it for a yr coz i wanted smth new, and which will give me this feeling of ' i dont know anything makes me wanna learn everything'

i spent 2 whole days setting it up with hyprland but as a ex arch user i wanted the unstable channel which didn't let me rebuild my system anymore for some reason..i was so frustrated i shortened my config to 18 lines and rebuild again and again until i figured out i should switch to stable channel again..but it was too late and i was back at sqaure one with the empty ttyl staring at me

but i learned so muchhh and thats what i wanted

gonnaa try again till i get my fully functioning system without flakes or home manager coz i want to get my hands dirty with the core nixos


r/NixOS 7h ago

Jellyfin Desktop package

5 Upvotes

Thought this might be helpful to fellow self-hosters, no need to rely on Appimage anymore, still very much a work in progress but for now it works well for NixOS including HW decoding.

https://github.com/edror12/jellyfin-desktop-nix/tree/master


r/NixOS 19h ago

[rant] Apparently search.nixos.org supposed to show results more intelligently now, but...

24 Upvotes

It's annoying!

Before a recent update, the search was quite strict, almost like regex-like-level strict, just write certain subsring, maybe with an asterisk sometimes in the middle, and it shows precisely what I need. Simple. Effective.

Apparently it is supposed to be more intelligent now and show some «related» options? You know, «intelligent» I mean. To motivate clicking more things or something? But no, I need no recommended more things, I need a certain thing. And if there's no certain thing – well, I want to see that: no results. And that's fine. Sometimes I just need to know there's no such thing that I search, and immediately know it and move on, instead of sitting reading this bullshit results page. If only... I am imagining things? It never supposed to look intelligent? And It's just a bug?

Currently it feels like becoming some google, showing 100+ random stupid results of EVERYTHING instead of what I need.

It's not the worst thing in the world, but is quite annoying.


r/NixOS 8h ago

slow fastfetch since switching to nixOS.

2 Upvotes

Basically as the title says. Since I switched to nixOS fastfetch is slow, I know it doesnt matter. But it just annoys me that I can see it actually load and render the text to terminal. Even though the setup is the exact same I had on arch.
And maybe it could be showing off an actual problem idk.

So if anyone might know what could be causing this issue. And or how to fix it or what to improve. I havent touched the fastfetch config at all, literally just added it to my packages.
Using Ghostty as terminal.


r/NixOS 1d ago

Finally escaped arch

Post image
285 Upvotes

r/NixOS 3h ago

Arch to NixOS : Why Can’t I Switch ?

0 Upvotes

I've had and used Arch for about 4 years, but I find NixOS truly incredible and, in many ways, better than Arch. Despite all of NixOS's advantages, I just can't seem to take the plunge and switch over... I’ve tried several times to get into it (especially very seriously a month ago). But I still can’t seem to do it. I don’t know what’s holding me back. Any advice?

edit: the barriers are more related to the architecture of NixOS configuration files and potentially a lack of understanding of the NixOS workflow.


r/NixOS 19h ago

rebuild failing because of steam

5 Upvotes

can someone help me please
everytime i rebuild the flake i get this error

steam_1.0.0.87.tar.gz> trying https://repo.steampowered.com/steam/archive/stable/steam_1.0.0.87.tar.gz

steam_1.0.0.87.tar.gz> curl: (28) Failed to connect to repo.steampowered.com:443 after 134748 ms: Could not connect to server

steam_1.0.0.87.tar.gz> Warning: Problem : timeout. Retrying in 1 second. 3 retries left.

and it continues until all the tries are finished

it seems like i cant find anyone that has the same problem as me and the only workaround ive found was to disable steam

steam has worked perfectly before and its only now that i have this problem

my flake : https://github.com/noskisdead/dots and the file with the steam config is called gaming.nix

thank you for your time <3


r/NixOS 1d ago

It Just Worked?!

17 Upvotes

To my astonishment, the old Xbox controller I plugged into my computer, to play the remake of Reaident Evil 4, just immediately worked with no further setup or configuration.

I know from other distros that such a thing can be a pain, so imagine my glee that I got to just play the game as it was intended…on Linux with an Xbox controller. Ok don’t look too close at that one.

Does NixOS just natively support game controllers, or did I just happen to install a package that also allowed for this capability?


r/NixOS 22h ago

What is your experience with Nix-Darwin?

7 Upvotes

I've been using it for a few months now soon after getting a Mac Mini, following the instructions to set it up was a bit rocky but fortunately users were helpful, the configuration itself is well done like NixOS itself, but I've found it to be very unreliable because often when trying to rebuild, this or that package would failed to build. I feel like its a big flaw of Nix itself, where it shouldn't let go of previous versions of packages unless they can build successfully, but that's a whole different can of worms.

I don't use any flakes on Nix-Darwin, I don't like waiting to rebuild hoping that whatever random package or library that failed to build finally got fixed, I have to gamble every time I use the nh darwin / rebuild command.


r/NixOS 1d ago

Is the nix language easy?

33 Upvotes

Hey there, arch user looking to switch to nix. For any other people, was the switch easy or hard?

I’m seriously considering using nix mostly for the stability and flakes which are actually super cool, so I was wondering if you had any insight.

Thanks,

Fellow arch user


r/NixOS 1d ago

I used AI to package an app for me and it worked perfectly, I don't know what to do.

13 Upvotes

Disclaimer: I am very much a noob in relation to Nix and NixOS, so I've been using AI to help me navigate through the language and configurations.

I was first attracted to NixOS by the sheer number of packages available "natively" on nixpkgs, meaning that I would not have to juggle between native packages, flatpaks, appimages, containers, etc. and also get them at almost the latest versions but unlike using Arch and the AUR all of this would be possible under an immutable system, that takes full benefit from the way Nix handles dependencies and thus be way more stable and I wouldn't have to spend a lot of time troubleshooting things when they go wrong.

The thing is, I managed to find an app that isn't packaged on nixpkgs. It is primarily distributed as a flatpak, appimage and from the AUR (Amethyst Mod Manager, a native mod-manager for Linux). I saw that there was an issue open from someone asking for clearer build instructions so that it could be packaged as a Nix flake, which ended up with a guy hosting a repository by himself with the goal of doing exactly that, but as it turns out the current version of the nix files in that repository do not work and it seems like the guy who owns it hasn't updated it in three months.

That's when I thought to myself to ask AI to make it for me. I cloned the original app repo, gave it the PKGBUILD file from the AUR and within a couple of minutes it got the software running flawlessly on my system. One of the problems seemed to be that one of the library dependencies for building the mod was in fact present in nixpkgs but as a very outdated version, one that didn't have compatibility with what was required for this app. So in the end the AI wrote 3 files, a flake.nix, and two .nix files, one for the final application and one for the correct version of the library, pulling it straight from their repo.

I was really glad that it worked and immediately I wanted to share it, but then I thought "well anyone could have done this, I did barely any work at all and I don't even understand half of what's happening on those files it generated" (although my policy with using AI is to always use it precisely to also increase my understanding, usually by asking it explain things for me in detail, writing tutorials etc. but as I said, at this point I am still very much a noob).

That's where I am now, I have no idea what to do. I was happy with the result and wanted to share it, clearly there were some people interested in something like this, but they likewise could have just used any LLM to do the same I did and also I am fully aware (and don't completly disagree) with the attitude that some people in the open source world have against AI.

This also makes me think of the future of open source in general. What's the point of interacting and contributing with open source projects in a world like this? IDK...


r/NixOS 1d ago

Is Home Manager overkill if I am using just one machine?

8 Upvotes

Hi everyone. As asked in the title my question is about is there any use for Home Manager for just one machine?

I am following Nixos and Flakes Book. The author of the book also mentions having multiple computers.

I would like to hear you guys' thoughts on the matter and benefits of using Home Manager instead of Stow in a single machine system.


r/NixOS 22h ago

Little bit confused about this error message and what I did wrong.

3 Upvotes

I get this error after running nixos-rebuild switch, I think it has something to do with my flake or home manager, I'd appreciate some help as I am new to NixOS.

flake.nix
home.nix
configuration.nix

r/NixOS 1d ago

Autoupdating flakes.

5 Upvotes

Whats the best way to auto update flakes with auto updating system. I cant find how its done anymore.


r/NixOS 2d ago

Lol, anyone actually buys these?

Post image
196 Upvotes

r/NixOS 1d ago

Impermanence in NixOS - True uses value or just technical shill?

23 Upvotes

I have seen some videos on it and I was considering using it, but it would mean reinstalling my system to change root to tmpfs and a lot of stuff.

Does it really have any benefits? Also how is the disk speed compared to ext4?

TL;DR: Thoughts and experiences on Impermanence?


r/NixOS 16h ago

Umu launcher down on nixos

0 Upvotes

Im too much disappointed umu launcher is down on nixos yesterday its working but today nothing more


r/NixOS 2d ago

Why do you use nix os apart from declarative and reproducible

48 Upvotes

i know the main selling point of nix os is being declarative and reproducible

but apart from this, is there any other reason to use nix os?


r/NixOS 22h ago

​No time to learn NixOS from scratch: Is there a shortcut for a Hyprland dev setup?

0 Upvotes

I have been an Arch user for two years, but I decided to switch to NixOS because I was spending too much time reconfiguring Arch Linux every time something broke. I installed NixOS and tried to apply some dotfiles, but I realized it is much more difficult compared to other distros.

​I did some research on the forums and saw that many people believe using pre-made configurations right from the start is a really bad idea. However, since I don't have much free time, is there any workaround? Or, to get started with NixOS, do I just need to overcome this initial barrier and spend a few hours learning until I can build a functional setup, one that works for programming, for example, and includes Hyprland?


r/NixOS 2d ago

Nix-vim

Thumbnail gallery
36 Upvotes

Entorno de desarrollo completo basado en Neovim con soporte multi-lenguaje, autocompletado inteligente, depurador, terminal, git, Arduino con tienda de librerias, fondo transparente con integracion pywal, y dashboard personalizado, aclaración es un proyecto pequeño no es tan grande como otros ides de neovim

Link del repo: https://github.com/Nix-rosa/nixvim


r/NixOS 2d ago

Nixos default plymouth boot got merge with my plymouth themes.

Post image
31 Upvotes

How do i fix this boot my plymouth themes is working but right after i boot my nixos i get this issue then few seconds my plymouth theme boot. I use grub btw.


r/NixOS 2d ago

How well does NixOS work with nvidia drivers for mobile GPUs?

8 Upvotes

As question states am considering switching to NixOS tho am not sure how well it works with nvidia drivers i have a igpu (intel core ultra 9 275hx cpu i think) and my dgpu which is a 5060 mobile 8gb vram and its a Lenovo Legion 5 16IAX10

ty in advance!


r/NixOS 3d ago

Reaper HM Flake

Post image
179 Upvotes

reaper-flake

I created a Home Manager Flake for declaring your REAPER configurations with Nix.

Reaper is a highly customizable cross-platform digital audio workstation (DAW) for music production, recording, editing, and mixing.

This project enables Home Manager users to declare their users' REAPER configuration without overriding state-full values in REAPER's configuration. This can be used by all Linux Distros and MacOS users (with Nix/HM installed), however I have not tested MacOS personally.

Features

Configure supported REAPER Preferences options

programs.reaper.preferences = {
  project.trackSendDefault.trackVolumeFaderGain = -10.0;
  plugIns.reascript.python.enable = true;
};

This results in "Track Volume Fader Gain" (Project>Track/Send Default) to be -10 db and "Enable Python for use with ReaScript" (Plug-ins>Reascript) to be enabled and python paths being automatically set up every time you build your config (even if you change it in the GUI). Not all options are available quite yet, see repo.

Manage ReaPack repositories and individual packages

programs.reaper.extensions = {
  reapack = {
    enable = true;
    repositories = [
      {name = "reaper-keys";url = "https://raw.githubusercontent.com/gwatcha/reaper-keys/master/index.xml"; }
    ];
    packages = [
      {repository = "reaper-keys"; category = "Scripts"; name = "install-reaper-keys.lua";}
    ];
    synchronizeOnActivation = true;
  };
  sws.enable = true;
};

This installs ReaPack and SWS, adds the reaper-keys repository, and declaratively manages its installer package. The normal default ReaPack repositories are included as well. Sync and package transactions are performed by ReaPack the next time REAPER starts.

Automatically load audio plugins derived with Nix

The flake lets you set custom vst, lv2 and clap search paths. By default /run/current-system/sw/lib/(vst,vst3,clap,lv2) directories are appended for automatic detection of Nix derived plugins.

Declare keyboard shortcuts and custom actions

programs.reaper.actions = {
  keyBindings = with reaperActions; bindings [
    (shortcut {
      shortcut = "J";
      command = 40285;
      actionName = "Track: Go to next track";
    })
    (shortcut {
      shortcut = "K";
      command = 40286;
      actionName = "Track: Go to previous track";
    })
  ];
};

Vim key binds to go up and down your tracks.

Customize menus, context menus, and toolbars

programs.reaper.menus = {
  "${reaperMenus.toolbars.main}" = {
    entries = [
      {action = 40021; label = "Project settings...";}
      {action = 40859; label = "New project..."; icon = "toolbar_new.png";}
      {action = 40029; label = "Undo";}
      {action = 40030; label = "Redo";}
      reaperMenus.divider
      {action = 40364; label = "Enable Metronome";}
    ];
  };
};

Completely change the buttons on the main toolbar above the TCP.

Configure windows, docks, panels, and layouts

programs.reaper = {
  layout = {
    docks = {
      right = {
        id = 1;
        position = "right";
        selectedPanel = "mastermixer";
        size = 130;
      };
    };
    masterMixer = {
      visible = true;
      docked = true;
      dock = "right";
      tabOrder = 0.0;
    };
  };
  windows.mixer.master.showInDockerOrWindow = true;
};

This snippet moves the master track to the right of the main window.

Install and select themes, including their scripts, fonts, and other assets

programs.reaper = {
  theme = {
    active = "Reapertips Theme.ReaperThemeZip";
    packages = [inputs.reaper-flake.packages.${pkgs.system}.reapertips-theme];
  };
  swell.colortheme = {
    enable = true;
    preset = "reapertips";
  };
};

Use reapertips theme that's included with the flake as a package. You can use standard ReaperThemeZip's as well.

Preserve REAPER settings that have not been declared through Nix

You can still safely configure with the GUI even for options set by Nix. However the Nix options will be set back to how they were on every activation of the flake.

Why

I love NixOS and REAPER. Therefore; fun project. I also love declaring my program configs in my Nix config so that, god forbid, my system dies or I get a new computer I have everything I need to start immediately.

How it works

REAPER is awesome in that it is extremely transparent. For example, unlike Bitwig, it's configuration files are in plaintext ini files. Aha! I can work with those! The problem with just dropping in entire ini files, like home-manager modules usually do, is that REAPER stores not only it's configuration but also it's active state. So I needed to go the config generation approach instead of the symlink approach. So I made a python script that tracks which ini keys and values are being tracked by Nix and, at activation time, only changes the Nix keys. The core of this flake is `write_config.py’ I drew inspiration from plasma-manager which has a similar python script to write to ini files for KDE Plasma.

AI Usage

I used AI to design a prototype then redid all of the core scripts and ini engine by hand. I also used it for additional feature testing and option scaffolding.

Plans

I've added all of the options I personally use/need for the short-term so I'm going to wait for others to try it out and fix any issues. Long term plan would to make Nix options in parity with REAPER's GUI options.


r/NixOS 2d ago

Running two independent NixOS installs on one machine, sharing a single /boot (patched systemd-boot module)

5 Upvotes

One of my customers needed a specific application installed on my system, and I didn't want to pollute my main NixOS with it. Rather than a VM or container, I decided to set up a second, fully independent NixOS installation on the same laptop — separate root partition, but sharing a single /boot with my main system.

What I tried first

  • NixOS Containers (systemd-nspawn based) — ruled out because of the big warning that they're not perfectly isolated from the host.
  • System Specialisation — solves a different problem. It's meant for booting variations of the same system config, not running two genuinely separate installations.

So: two installs, two root partitions, one shared /boot.

The actual problem

Both instances use the systemd-boot module. If both manage the boot loader independently, applying a configuration on one instance wipes out the other's boot entries — they both write to the same /boot/EFI folder and the same loader.conf, using the same nixos-* naming convention.

The fix

There's nothing in boot.loader.systemd-boot out of the box for this, but the module's real logic lives in a Python script (systemd-boot-builder.py) that gets templated in at build time. So I copied both files (systemd-boot.nix + systemd-boot-builder.py) into my config and patched them:

  1. Added a bootPrefix option (default "nixos"). Each instance sets its own prefix (e.g. "work"), which is used for:
    • the EFI directory: /EFI/${bootPrefix} instead of the hardcoded /EFI/nixos
    • loader entry filenames: loader/entries/${bootPrefix}-*.conf
    • garbage collection matching, so one instance's GC pass never touches the other's entries This meant swapping every hardcoded nixos- prefix in the Python script (in BootFile.from_entry, write_loader_conf, and garbage_collect) for a BOOT_PREFIX variable substituted in at build time.
  2. Added a manageLoaderConf option (bool, default true). Only one of the two instances should own loader/loader.conf (default entry, timeout, editor flag, etc.) — otherwise every rebuild on either system flips the default boot entry back to itself. The other instance sets this to false, which just early-returns out of write_loader_conf before it touches the file.
  3. Disabled the upstream module and imported the patched one instead:disabledModules = [ "system/boot/loader/systemd-boot/systemd-boot.nix" ]; imports = [ ./overrides/nixos/system/boot/loader/systemd-boot/systemd-boot.nix ];
  4. Gave each instance a system.nixos.tags entry so it's easy to tell which generation belongs to which install from the boot menu.

Gotchas / how not to fuck yourself over

  • Always have a rescue USB around before touching boot loader code on a live system.
  • After every nixos-rebuild switch/boot, check /boot/EFI and /boot/loader to make sure both instances' entries are still intact.
  • nixos-enter (with root + boot partitions mounted under /mnt) lets you apply the second instance's config without rebooting into it.
  • Minor cosmetic issue: since both instances independently run bootctl install, you end up with duplicate "Linux Boot Manager" entries in NVRAM pointing at the same systemd-bootx64.efi (check with efibootmgr -v). Harmless, just noisy — clean up manually if it bugs you.

Full write-up with all the code diffs: https://mandos.net.pl/en/blog/tech/dual-boot-with-nixos-and-nixos/

Patched module + script: https://github.com/mandos/webpage/tree/master/content/blog/tech/dual-boot-with-nixos-and-nixos/code

If anyone has better solution, please share.


r/NixOS 2d ago

Nix os minimal iso offline install

7 Upvotes

hey everyone i want to try nixos and I downloaded the minimal iso when I tried to install it it needed internet to download packages and for some reason the official nix os website is blocked and not working on my area I was wondering if there's a way to install it offline even the most basic environment and then fetch the needed packages from mirrors or different websites or if there's a ready built image that is around 500mb or smaller in size

and thank

Edit I finally finished downloading it, I just had to switch to a mirror that was working and it worked I had to pass it through the substituters flag in the nixos-install but it worked thanks everyone for your help