I'm a beginner/intermediate in NixOS and my flake rebuild takes about 25 seconds to be finished. Most of the time is evaluating derivation for some reason and it's getting kinda frustrating having to wait when I want to add a package to my config. Has anyone the same problem or is it normal that it takes this long in Nix?
Depends on what you're doing in your config and what you're changing. My configs are huge and complex because I was a moron when I first started out. Adding packages to your nixosConfigurations is a smell IMO. Most of the time, it would be preferable to add them to a devshell instead.
25 seconds sounds pretty close to my experience, but my machine is beefy and my configs have a lot of bad patterns for eval time.
I agree that adding every package to my NixOS configuration isn't the right way to do things, and I should definitely use a devshell or nix-shell -p $package for that. However, it's much more noticeable when I'm working with something like an HTTP server, constantly adding new things to the config, and needing to wait 25 seconds to actually test it.