Spec-Zone.ru › Homebrew

Модуль: OS Приватный

Определён в:
extend/os/linux/keg.rb,
extend/os/mac/keg.rb,
extend/os/mac/cleaner.rb,
extend/os/mac/cleanup.rb,
extend/os/mac/formula.rb,
extend/os/mac/readall.rb,
extend/os/mac/sandbox.rb,
extend/os/linux/search.rb,
extend/os/mac/cask/dsl.rb,
extend/os/mac/cmd/info.rb,
extend/os/mac/hardware.rb,
extend/os/mac/test_bot.rb,
extend/os/linux/cleaner.rb,
extend/os/linux/cleanup.rb,
extend/os/linux/formula.rb,
extend/os/linux/install.rb,
extend/os/linux/sandbox.rb,
extend/os/mac/reinstall.rb,
extend/os/linux/cmd/info.rb,
extend/os/linux/test_bot.rb,
extend/os/mac/diagnostic.rb,
extend/os/linux/compilers.rb,
extend/os/linux/diagnostic.rb,
extend/os/mac/api/internal.rb,
extend/os/mac/hardware/cpu.rb,
extend/os/mac/keg_relocate.rb,
extend/os/mac/utils/socket.rb,
extend/os/linux/cask/config.rb,
extend/os/mac/dev-cmd/tests.rb,
extend/os/mac/language/java.rb,
extend/os/mac/system_config.rb,
extend/os/mac/utils/bottles.rb,
extend/os/linux/hardware/cpu.rb,
extend/os/linux/keg_relocate.rb,
extend/os/mac/bundle/skipper.rb,
extend/os/mac/cask/installer.rb,
extend/os/mac/dev-cmd/bottle.rb,
extend/os/mac/extend/ENV/std.rb,
extend/os/linux/bundle/bundle.rb,
extend/os/linux/cask/caskroom.rb,
extend/os/linux/dev-cmd/tests.rb,
extend/os/linux/system_config.rb,
extend/os/mac/linkage_checker.rb,
extend/os/mac/missing_formula.rb,
extend/os/mac/simulate_system.rb,
extend/os/linux/bundle/skipper.rb,
extend/os/linux/cask/installer.rb,
extend/os/linux/dev-cmd/bottle.rb,
extend/os/linux/extend/ENV/std.rb,
extend/os/mac/extend/ENV/super.rb,
extend/os/linux/cask/quarantine.rb,
extend/os/linux/linkage_checker.rb,
extend/os/linux/simulate_system.rb,
extend/os/mac/development_tools.rb,
extend/os/mac/extend/ENV/shared.rb,
extend/os/mac/formula_installer.rb,
extend/os/linux/cask/utils/trash.rb,
extend/os/linux/extend/ENV/super.rb,
extend/os/mac/extend/pathname/os.rb,
extend/os/linux/development_tools.rb,
extend/os/linux/extend/ENV/shared.rb,
extend/os/mac/cask/artifact/moved.rb,
extend/os/linux/extend/pathname/os.rb,
extend/os/mac/dependency_collector.rb,
extend/os/linux/cask/artifact/moved.rb,
extend/os/linux/dev-cmd/update-test.rb,
extend/os/mac/formula_cellar_checks.rb,
extend/os/linux/bottle_specification.rb,
extend/os/linux/bundle/brew_services.rb,
extend/os/linux/dependency_collector.rb,
extend/os/linux/formula_cellar_checks.rb,
extend/os/mac/cask/artifact/symlinked.rb,
extend/os/linux/cask/artifact/relocated.rb,
extend/os/mac/cask/artifact/abstract_uninstall.rb,
os.rb,
os/mac.rb,
os/linux.rb,
cask/macos.rb,
os/mac/sdk.rb,
os/linux/ld.rb,
os/mac/xcode.rb,
os/linux/glibc.rb,
os/linux/elf/os.rb,
os/linux/kernel.rb,
os/linux/libstdcxx.rb

Этот модуль относится к приватному API. Этот модуль можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности не следует использовать этот модуль, поскольку он может быть удалён или изменён без предупреждения.

Определено в пространстве имён

Модули: Linux, Mac

Краткое описание констант свернуть

LINUX_CI_OS_VERSION =

Эта константа относится к приватному API. Эту константу можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности не следует использовать эту константу, поскольку она может быть удалена или изменена без предупреждения.

См. Linux-CI.md

"Ubuntu 24.04"
LINUX_CI_ARM_RUNNER =

Эта константа относится к приватному API. Эту константу можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности не следует использовать эту константу, поскольку она может быть удалена или изменена без предупреждения.

"ubuntu-24.04-arm"
LINUX_GLIBC_CI_VERSION =

Эта константа относится к приватному API. Эту константу можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности не следует использовать эту константу, поскольку она может быть удалена или изменена без предупреждения.

"2.39"
LINUX_GLIBC_NEXT_CI_VERSION =

Эта константа относится к приватному API. Эту константу можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности не следует использовать эту константу, поскольку она может быть удалена или изменена без предупреждения.

Пользователи с версией ниже этой получат предупреждение от brew doctor

"2.39"
LINUX_GCC_CI_VERSION =

Эта константа относится к приватному API. Эту константу можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности не следует использовать эту константу, поскольку она может быть удалена или изменена без предупреждения.

https://packages.ubuntu.com/noble/gcc

"13"
LINUX_LIBSTDCXX_CI_VERSION =

Эта константа относится к приватному API. Эту константу можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности не следует использовать эту константу, поскольку она может быть удалена или изменена без предупреждения.

https://packages.ubuntu.com/noble/libstdc++6

"6.0.33"
LINUX_PREFERRED_GCC_COMPILER_FORMULA =

Эта константа относится к приватному API. Эту константу можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности не следует использовать эту константу, поскольку она может быть удалена или изменена без предупреждения.

T.let("gcc@#{LINUX_GCC_CI_VERSION}".freeze, String)
LINUX_PREFERRED_GCC_RUNTIME_FORMULA =

Эта константа относится к приватному API. Эту константу можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности не следует использовать эту константу, поскольку она может быть удалена или изменена без предупреждения.

"gcc"
ISSUES_URL =

Эта константа относится к приватному API. Эту константу можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности не следует использовать эту константу, поскольку она может быть удалена или изменена без предупреждения.

if nix_managed_homebrew
  OS.nix_managed_homebrew_issues_url
else
  "https://docs.brew.sh/Troubleshooting"
end.freeze
PATH_OPEN =

Эта константа относится к приватному API. Эту константу можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности не следует использовать эту константу, поскольку она может быть удалена или изменена без предупреждения.

if wsl? && (wslview = which("wslview").presence)
  wslview.to_s
else
  "xdg-open"
end.freeze

Краткое описание методов класса свернуть

  • .kernel_name ⇒ String

    Получить имя ядра.

  • .kernel_version ⇒ Version

    Получить версию ядра.

  • .linux? ⇒ Boolean

    Проверить, является ли операционная система Linux.

  • .mac? ⇒ Boolean

    Проверить, является ли операционная система macOS.

  • .nix_managed_homebrew? ⇒ Boolean приватный
  • .nix_managed_homebrew_issues_url ⇒ String приватный
  • .not_tier_one_configuration? ⇒ Boolean приватный
  • .wsl? ⇒ Boolean

    Проверить, работает ли Linux в Windows (WSL).

Подробное описание методов класса

.kernel_name ⇒ String

Получить имя ядра.

Возвращает:

  • (String)


51
52
53
54
# File 'os.rb', line 51

def self.kernel_name
  require "etc"
  @kernel_name ||= T.let(Etc.uname.fetch(:sysname), T.nilable(String))
end

.kernel_version ⇒ Version

Получить версию ядра.

Возвращает:

  • (Version)


42
43
44
45
# File 'os.rb', line 42

def self.kernel_version
  require "etc"
  @kernel_version ||= T.let(Version.new(Etc.uname.fetch(:release)), T.nilable(Version))
end

.linux? ⇒ Boolean

Проверить, является ли операционная система Linux.

Возвращает:

  • (Boolean)


22
23
24
25
26
# File 'os.rb', line 22

def self.linux?
  return false if ENV["HOMEBREW_TEST_GENERIC_OS"]

  RbConfig::CONFIG["host_os"].include? "linux"
end

.mac? ⇒ Boolean

Проверить, является ли операционная система macOS.

Возвращает:

  • (Boolean)


12
13
14
15
16
# File 'os.rb', line 12

def self.mac?
  return false if ENV["HOMEBREW_TEST_GENERIC_OS"]

  RbConfig::CONFIG["host_os"].include? "darwin"
end

.nix_managed_homebrew? ⇒ Boolean

Этот метод относится к приватному API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности не следует использовать этот метод, поскольку он может быть удалён или изменён без предупреждения.

Возвращает:

  • (Boolean)


69
70
71
# File 'os.rb', line 69

def self.nix_managed_homebrew?
  nix_homebrew? || nix_darwin?
end

.nix_managed_homebrew_issues_url ⇒ String

Этот метод относится к приватному API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности не следует использовать этот метод, поскольку он может быть удалён или изменён без предупреждения.

Возвращает:

  • (String)


74
75
76
77
78
79
80
# File 'os.rb', line 74

def self.nix_managed_homebrew_issues_url
  if nix_homebrew?
    "https://github.com/zhaofengli/nix-homebrew/issues"
  else
    "https://github.com/nix-darwin/nix-darwin/issues"
  end
end

.not_tier_one_configuration? ⇒ Boolean

Этот метод относится к приватному API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности не следует использовать этот метод, поскольку он может быть удалён или изменён без предупреждения.

Возвращает:

  • (Boolean)


135
136
137
# File 'os.rb', line 135

def self.not_tier_one_configuration?
  !defined?(OS::ISSUES_URL)
end

.wsl? ⇒ Boolean

Проверить, работает ли Linux в Windows (WSL).

Возвращает:

  • (Boolean)


32
33
34
35
36
# File 'os.rb', line 32

def self.wsl?
  return false if ENV["HOMEBREW_TEST_GENERIC_OS"]

  /-microsoft/i.match?(kernel_version.to_s)
end

© 2009–present Homebrew contributors
Licensed under the BSD 2-Clause License.
https://docs.brew.sh/rubydoc/OS.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API