Skip to content

Commit a39c96f

Browse files
committed
feat: add check_os::is_nixos()
1 parent a8104fd commit a39c96f

1 file changed

Lines changed: 8 additions & 0 deletions

File tree

src/check_os.sh

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,8 @@ function check_os::init() {
1111
_DISTRO="Ubuntu"
1212
elif check_os::is_alpine; then
1313
_DISTRO="Alpine"
14+
elif check_os::is_nixos; then
15+
_DISTRO="NixOS"
1416
else
1517
_DISTRO="Other"
1618
fi
@@ -32,6 +34,11 @@ function check_os::is_alpine() {
3234
command -v apk > /dev/null
3335
}
3436

37+
function check_os::is_nixos() {
38+
[[ -f /etc/NIXOS ]] && return 0
39+
grep -q '^ID=nixos' /etc/os-release 2>/dev/null
40+
}
41+
3542
function check_os::is_linux() {
3643
[[ "$(uname)" == "Linux" ]]
3744
}
@@ -71,3 +78,4 @@ export _DISTRO
7178
export -f check_os::is_alpine
7279
export -f check_os::is_busybox
7380
export -f check_os::is_ubuntu
81+
export -f check_os::is_nixos

0 commit comments

Comments
 (0)