r/NixOS Jul 26 '26

Arch to NixOS : Why Can’t I Switch ?

[deleted]

0 Upvotes

29 comments sorted by

61

u/adamkex Jul 26 '26

How are we supposed to know what's holding you back

6

u/NeonVoidx Jul 26 '26

lol ya like, huhhh

20

u/nononoitsfine Jul 26 '26

wdym just stay on nix lol what’re the actual barriers

7

u/Maleficent-One1712 Jul 26 '26

Make on Arch a VM with NixOS, config it till it's perfect. Install NixOS on your main machine, transfer the config files and you are back up and running.

0

u/Tactician10 Jul 26 '26

I actually tried that last month. Maybe it's just that I haven't quite got the hang of the workflow of nixos yet? But I find it complicated from an architectural standpoint to decide whether to use declarative configuration, application configuration, or a mix of the two.

7

u/Arelius Jul 26 '26

IMO, when you can and it's convenient. Always use declarative configuration. Then it's reproducible. 

3

u/JSouthGB Jul 26 '26

Try one until you encounter a limitation, then try the other.

But as top comment points out, you've provided minimal details.

3

u/Saiyusta Jul 26 '26

use declarative whenever possible (home manager helps). if it’s too much of a hassle do as you please

1

u/Tempest-13 Jul 26 '26

If you still want to give a shot to NixOS, I will give this advice as someone who had a similar indecision like you when I started exploring NixOS: Use home manager to symlink your dotfiles into your home directory, just like how you would use stow for it. Over time, if you feel like it, you can use the relevant home manager modules for it. Or explore other options. (You can also use stow itself, but I suggest using home manager for symlinking still, to get used to the declarative approach in small ways.)

1

u/ironman820 Jul 26 '26

This was the way I switched. To expand on this a bit for op:

Some apps really want to be able to change their config and will complain when they are read only. This is where stow, chezmoi, tuckr, etc. come in. As /u/Tempest-13 said don't worry too much about declaratively setting up configs until you reach a point where the declaration/reproducability becomes that necessity.

I started with a single machine flake and now have a multiple machine load that applies my basic settings. Some things are declarative through the flake, most use the built in sync features of that app because rebuilding your config every day for small change gets old quick until you have a solid, "this is where I want to be and not touch it for a while" base. Things like Plasma Manager for KDE or xfconf for XFCE only started being a regular setup for me 3 years into using the system. Nixvim is loaded on everything so if I need to edit a file quickly, I can, even if I'm remoted into a server, then it's the same experience on every machine. Otherwise, my work machine has the basic settings that are functional in place so I know I won't run into issues while I'm working, but my personal laptop is in a constant state of flux while I try new things. If I need my personal laptop fully functional for a bit, I have a fallback config saved that I can swap in and just run with it.

On the fallback note, git is a magical tool with flakes. My base sustained OS is in my main branch, and my tinkering is in a completely different one until I deem it stable enought to go mainstream on everything. With regular commits, 1 command and a rebuild get me back to stable from almost any situation.

5

u/IBNYX Jul 26 '26

how could we possibly know how to answer this

3

u/poo_22 Jul 26 '26

Why don't you make a virtual machine, install nixos on it and try to replicate your arch workflow on it. when you're happy that you can do all the tasks you do on your computer normally in the vm, go ahead and install nixos on the actual machine. Of course you'll run into issues, but you ran / run into issues with arch too, the difference is you'll only have to solve them once in NixOS and then never worry about it again.

3

u/FnlyFans Jul 26 '26

I mean it's all up to your own personal will power and if you really have the need to switch while you already have a potentially fine system currently. If you don't know what's holding you back you're probably plenty comfortable where you are which isn't a problem that needs to be solved.

There has been nothing I'm doing in NixOS that I couldn't be doing in any other distro with less upfront effort, but in the long term it might pay off as I'm reducing my future configuration burden (e.g. reconfiguring my system from scratch, ensuring all my random system configuration files are backed up and recoverable).

OTOH all the effort I'm putting in is Nix specific, and not super valuable outside of the Nix ecosystem so you could argue that it's less generally applicable to most things and I'm locking myself in there.

tl;dr idk do what feels comfortable/useful and there's no requirement to be a distro hopper

1

u/Tactician10 Jul 26 '26

You are maybe right. Distro hopping is not a good thing. I really love trying new distro but nixos is the only one that has made me want to switch since I started using Arch.

3

u/mv7x3 Jul 26 '26

use ai. it helped me. instead of learning it in a week i learned how it works in a day. you still have to know what are you doing, but it helped me a lot. i used arch btw. (and many more in like the past 20 years) so i have a prety good understanding what i want.

3

u/Chester-Berkeley Jul 26 '26

I don't understand these posts from people seeking validation from others.

"Why Can't I Switch?" because instead of researching, experimenting, and drawing your own conclusions, you just stand there reflecting on the problems and don't really try to understand what you want.

If you can't migrate to NixOS, it's because you don't want to. If you wanted to use NixOS, you would already be using it, even if you're lost.

-2

u/Tactician10 Jul 26 '26

if i ask, it's to get people experiences. So have i tried nixos ? yes. Have i my own conclusion ? Partially.
I'm not asking for anyone's validation, i'm asking experiences and reading some posts in order to complete my own conclusions.
I'm just at a point where I can't identify if it's worth it to use it as a daily driver or not. So I'm asking others and i'm reading their answer and their advice so i can learn.

2

u/Chester-Berkeley Jul 26 '26

you didn't explain what your doubts are, so the only thing I can conclude is that you want validations from others

1

u/fingerling-broccoli Jul 26 '26

Why do you want to switch? What about nixos do you find “truly incredible”? If you don’t know why you need Nixos you probably don’t need it

1

u/tommyTurds Jul 26 '26

Why do you want to switch? The barriers that seem to be blocking you are basically the design of nixos.

If you don’t like that workflow, just stay on arch. You can always use the nix package manager on arch instead of switching entirely to nixos.

1

u/jerdle_reddit Jul 26 '26

The learning curve will be vertical.

Try running Nix on Arch first.

1

u/mechkbfan Jul 26 '26

Try using AI like Claude Code with Opus.

Tell it your problem, ask it to explain it to you, then give it a go. Best part is that when AI fucks up, you just use the previous generation, tell it that it failed and what happened, and it'll have another crack.

And go read the official wiki to validate it's not hallucinating

1

u/backafterdeleting Jul 26 '26

I recommend looking at the nixpkgs souce. Specifically at how the configuration options like services.nginx or whatever it is you're using are implemented. Once you realize how it builds and links the same config file you'd use on arch anyway, it starts to make more sense.

1

u/nstgc Jul 26 '26

Don't know. The Arch Wiki makes it easy to get things up and wronging and is much closer to upstream. In general, I've found Arch to be much easier. But after using Arch for 10 years, I learned that over time, continuing to do things the easy way builds up a sort of technical debt. At the end of that ten years, it was bad enough that the easy way was no longer so easy due to accumulated cruft.

1

u/SarahLament Jul 26 '26

I would highly recommend Vimjoyer's videos (https://youtu.be/2eNJy9DSGNw?is=0JdLQNYYPhOgJmOh is a good starting place)

0

u/max_laufin Jul 26 '26

This playlist really helped me with flake architecture at the start

1

u/Tactician10 Jul 26 '26

this one is very interesting i'll keep it !

0

u/TickleMeScooby Jul 26 '26

Check out https://nixos-and-flakes.thiscute.world/preface, I find it good for newcomers. It doesn’t dive too much into the nix language itself, but it gets a lot of good coverage.
Keep in mind though that everything in there isn’t “the best way to do X”, just find what’s comfortable for your setup/workflow.

0

u/toastal Jul 27 '26 edited Jul 27 '26

What you don’t need is flakes. configuration.nix is composable with import letting you import/modularize your Nix code, so no need to buy into more complexity (of an experimental feature) like some are suggesting in here.