diff options
-rw-r--r-- | lib/pure/distros.nim | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/lib/pure/distros.nim b/lib/pure/distros.nim index 9e3d41026..033543c3a 100644 --- a/lib/pure/distros.nim +++ b/lib/pure/distros.nim @@ -29,6 +29,7 @@ from strutils import contains, toLowerAscii when not defined(nimscript): from osproc import execProcess + from os import existsEnv type Distribution* {.pure.} = enum ## the list of known distributions @@ -105,7 +106,7 @@ type Clonezilla SteamOS Absolute - NixOS + NixOS ## NixOS or a Nix build environment AUSTRUMI Arya Porteus @@ -161,6 +162,9 @@ proc detectOsImpl(d: Distribution): bool = of Distribution.BSD: result = defined(bsd) of Distribution.ArchLinux: result = "arch" in toLowerAscii(uname()) + of Distribution.NixOS: + result = existsEnv("NIX_BUILD_TOP") or existsEnv("__NIXOS_SET_ENVIRONMENT_DONE") + # Check if this is a Nix build or NixOS environment of Distribution.OpenSUSE: result = "suse" in toLowerAscii(uname()) or "suse" in toLowerAscii(release()) of Distribution.GoboLinux: |