2024-11-23 21:03:29 +00:00
|
|
|
# typed: strict
|
|
|
|
# frozen_string_literal: true
|
|
|
|
|
|
|
|
module OS
|
|
|
|
module Linux
|
|
|
|
module Cask
|
|
|
|
module Installer
|
|
|
|
extend T::Helpers
|
|
|
|
|
|
|
|
requires_ancestor { ::Cask::Installer }
|
|
|
|
|
2025-03-11 15:33:01 +00:00
|
|
|
LINUX_INVALID_ARTIFACTS = [
|
|
|
|
::Cask::Artifact::App,
|
|
|
|
::Cask::Artifact::AudioUnitPlugin,
|
|
|
|
::Cask::Artifact::Colorpicker,
|
|
|
|
::Cask::Artifact::Dictionary,
|
|
|
|
::Cask::Artifact::InputMethod,
|
|
|
|
::Cask::Artifact::Installer,
|
|
|
|
::Cask::Artifact::InternetPlugin,
|
|
|
|
::Cask::Artifact::KeyboardLayout,
|
|
|
|
::Cask::Artifact::Mdimporter,
|
|
|
|
::Cask::Artifact::Pkg,
|
|
|
|
::Cask::Artifact::Prefpane,
|
|
|
|
::Cask::Artifact::Qlplugin,
|
|
|
|
::Cask::Artifact::ScreenSaver,
|
|
|
|
::Cask::Artifact::Service,
|
|
|
|
::Cask::Artifact::Suite,
|
|
|
|
::Cask::Artifact::VstPlugin,
|
|
|
|
::Cask::Artifact::Vst3Plugin,
|
|
|
|
].freeze
|
|
|
|
|
2024-11-23 21:03:29 +00:00
|
|
|
sig { void }
|
|
|
|
def check_stanza_os_requirements
|
2025-03-11 15:33:01 +00:00
|
|
|
return unless artifacts.any? do |artifact|
|
|
|
|
LINUX_INVALID_ARTIFACTS.include?(artifact.class)
|
2025-03-03 17:54:54 +01:00
|
|
|
end
|
2025-01-19 16:15:19 +00:00
|
|
|
|
2024-11-23 21:03:29 +00:00
|
|
|
raise ::Cask::CaskError, "macOS is required for this software."
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
Cask::Installer.prepend(OS::Linux::Cask::Installer)
|