Модуль: OS::Linux::Sandbox Закрытый
Этот модуль является частью закрытого API. Этот модуль можно использовать только в репозитории Homebrew/brew. По возможности сторонним разработчикам следует избегать использования этого модуля, поскольку он может быть удалён или изменён без предупреждения.
Определено в пространстве имён
Модули: ClassMethods
Краткое описание методов класса свернуть
- .bubblewrap_candidate_paths ⇒ ::PATH закрытый
- .bubblewrap_executable ⇒ ::Pathname? закрытый
- .bubblewrap_executable! ⇒ ::Pathname закрытый
Краткое описание методов экземпляра свернуть
- #allow_cvs ⇒ void закрытый
- #allow_fossil ⇒ void закрытый
- #allow_write_temp_and_cache ⇒ void закрытый
- #run(*args) ⇒ void закрытый
Подробное описание методов класса
.bubblewrap_candidate_paths ⇒ ::PATH
Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. По возможности сторонним разработчикам следует избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.
86 87 88 | # File 'extend/os/linux/sandbox.rb', line 86 def self.bubblewrap_candidate_paths ::Sandbox.executable_candidate_paths end |
.bubblewrap_executable ⇒ ::Pathname?
Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. По возможности сторонним разработчикам следует избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.
91 92 93 | # File 'extend/os/linux/sandbox.rb', line 91 def self.bubblewrap_executable ::Sandbox.executable end |
.bubblewrap_executable! ⇒ ::Pathname
Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. По возможности сторонним разработчикам следует избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.
96 97 98 | # File 'extend/os/linux/sandbox.rb', line 96 def self.bubblewrap_executable! bubblewrap_executable || raise("Bubblewrap is required to use the Linux sandbox.") end |
Подробное описание методов экземпляра
#allow_cvs ⇒ void
Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. По возможности сторонним разработчикам следует избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.
Этот метод возвращает неопределённое значение.
109 110 111 112 | # File 'extend/os/linux/sandbox.rb', line 109 def allow_cvs cvspass = ::Pathname.new("#{Dir.home(ENV.fetch("USER"))}/.cvspass") allow_write path: cvspass, type: :literal if cvspass.exist? end |
#allow_fossil ⇒ void
Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. По возможности сторонним разработчикам следует избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.
Этот метод возвращает неопределённое значение.
115 116 117 118 119 120 | # File 'extend/os/linux/sandbox.rb', line 115 def allow_fossil [".fossil", ".fossil-journal"].each do |file| fossil_file = ::Pathname.new("#{Dir.home(ENV.fetch("USER"))}/#{file}") allow_write path: fossil_file, type: :literal if fossil_file.exist? end end |
#allow_write_temp_and_cache ⇒ void
Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. По возможности сторонним разработчикам следует избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.
Этот метод возвращает неопределённое значение.
101 102 103 104 105 106 | # File 'extend/os/linux/sandbox.rb', line 101 def allow_write_temp_and_cache allow_write_path "/tmp" allow_write_path "/var/tmp" allow_write_path HOMEBREW_TEMP allow_write_path HOMEBREW_CACHE end |
#run(*args) ⇒ void
Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. По возможности сторонним разработчикам следует избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.
Этот метод возвращает неопределённое значение.
330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 | # File 'extend/os/linux/sandbox.rb', line 330 def run(*args) @prepared_writable_paths = T.let([], T.nilable(T::Array[::Pathname])) @masked_read_paths = T.let([], T.nilable(T::Array[::Pathname])) old_report_on_exception = T.let(Thread.report_on_exception, T.nilable(T::Boolean)) Thread.report_on_exception = false super ensure Thread.report_on_exception = old_report_on_exception unless old_report_on_exception.nil? @prepared_writable_paths&.reverse_each do |path| path.rmdir if path.directory? rescue Errno::ENOENT, Errno::ENOTEMPTY nil end @prepared_writable_paths = nil @masked_read_paths&.reverse_each { |path| FileUtils.rm_rf(path) } @masked_read_paths = nil end |
© 2009–present Homebrew contributors
Licensed under the BSD 2-Clause License.
https://docs.brew.sh/rubydoc/OS/Linux/Sandbox.html