-
-
Notifications
You must be signed in to change notification settings - Fork 10.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
using depends_on
for intra-Cask dependencies and metapackages
#2001
Comments
depends_on
for intra-Cask dependencies and metapackages
For forward-compatibility, intentionally undocumented. Currently works only as a synonym: `depends_on :formula` substitutes for `depends_on_formula`, which is intended to be removed. However, this PR also provides additional `depends_on` keys for future expansion of functionality: - `:cask` - `:macos` - `:arch` - `:x11` - `:java` The symbol names were chosen to match those used in Homebrew Formulae. References: Homebrew#4688, Homebrew#2001
Verbatim from #8492:
(From here on, I will refer to the “metacask” as “Cask bundle”, after the deprecated A terse approach would be to deem a Cask valid if it includes:
Alternatively, we could explicitly mark Cask bundles with a boolean stanza akin to cask :v1 => 'metacask' do
bundle true
# optionally
version 'x.y'
homepage '…'
# payload
depends_on :cask => '…'
depends_on :cask => ['…', .. , '…']
…
end Beyond the DSL, we should define the behavior of Cask bundles in normal operations. Namely:
|
Two others alternatives that could be nice also : cask :v1 => 'my-metacask', :type => :bundle do
…
end Or metacask :v1 => 'my-metacask' do # Or bundle :v1 => 'my-metacask' do
…
end Else, for the Staging and Uninstallation I'm agree. But about the Uninstallation it could be complicated to define what is installed before. If a Cask |
Closing for lack of interest. |
Adding
depends_on
would not seem to be worth the effort for the small number of Casks with hard dependencies. (example:sshfs.rb
depends onosxfuse.rb
)However, using a dependency framework for metapackages might be generally useful. I describe one such case in #1999.
Edit: Ruby thoughtfully provides TSort for the hard part.
Edit:
depends_on :cask
will be stubbed in the DSL in #4896.Edit (by @ndr-qef):
depends_on :cask
has been implemented in #8491.The text was updated successfully, but these errors were encountered: