new to nixos. I have found a flake.nix file on the internet which I used to build my system. in that flake file I found the following line:
{
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
antigravity-nix = {
url = "github:jacopone/antigravity-nix";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs = { self, nixpkgs, antigravity-nix, ... }: {
nixosConfigurations.your-hostname = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [
./configuration.nix
./hardware-configuration.nix
{
environment.systemPackages = [
antigravity-nix.packages.x86_64-linux.default # Base App
antigravity-nix.packages.x86_64-linux.google-antigravity-ide # IDE
antigravity-nix.packages.x86_64-linux.google-antigravity-cli # CLI
];
}
];
};
};
}
if I understood correctly the flake also has outputs variable in the attribute set and it's returning nixpkgs whose url is set to the unstable. does it mean I am running unstable version of nixos?
Thanks in advance!
Yes, you are on unstable, and your analysis is correct.
Nevertheless, you regularly should run
nix flake update --commit-lock-filein your configuration directory (by default,/etc/nixos), and then rebuild, as flakes never auto-update. Think of these commands asapt updateandapt full-upgrade. The stable vs unstable channel only differ in when major updates are released. In my opinion, there is nothing wrong with running unstable, at least on a desktop, and I even use it on my server. You shouldn't see it asunstableas on Debian, but as rolling, like Debiantesting, OpenSUSE Tumbleweed, or Arch.Also keep in mind you don't need to run the flake update often. I'm on unstable and I run it like once a month. it's not like say Arch
sudo pacman -Syuwhere you could literally run that every day if you wanted. I mean sure you COULD run the flake update everyday but if you want to do that you might as well just use Gentoo.I do it once a week, and if something breaks (which does sometimes happen), I roll back and retry after a few days, maybe file a ticket.