summaryrefslogtreecommitdiff
path: root/ext/node/polyfills/_util/os.ts
blob: 66d18534cca81a11b95c004db2f7af58dd161890 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
// Copyright 2018-2023 the Deno authors. All rights reserved. MIT license.

export type OSType = "windows" | "linux" | "darwin" | "freebsd";

export const osType: OSType = (() => {
  // deno-lint-ignore no-explicit-any
  const { Deno } = globalThis as any;
  if (typeof Deno?.build?.os === "string") {
    return Deno.build.os;
  }

  // deno-lint-ignore no-explicit-any
  const { navigator } = globalThis as any;
  if (navigator?.appVersion?.includes?.("Win")) {
    return "windows";
  }

  return "linux";
})();

export const isWindows = osType === "windows";
export const isLinux = osType === "linux";