Skip to content

Instantly share code, notes, and snippets.

@jaygooby
Forked from edwardgeorge/jack.rb
Last active November 20, 2020 23:32
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save jaygooby/f0c08718c1d5803ebf115c4fa7fe67af to your computer and use it in GitHub Desktop.
Save jaygooby/f0c08718c1d5803ebf115c4fa7fe67af to your computer and use it in GitHub Desktop.
Homebrew formula to install JackOSX binary package.
require 'formula'
class Jack <Formula
homepage 'http://jackaudio.org'
version '0.90'
url 'https://dl.dropboxusercontent.com/u/28869550/JackOSX.0.90.zip'
def install
system "xar -xf JackOSX.0.90.pkg"
system "pax -rz -f jack.pkg/Payload"
Dir['usr/local/bin/jack_*',
'Library/Audio/Plug-Ins/HAL/JackRouter.plugin/Contents/MacOS/JackRouter',
'Library/Audio/Plug-Ins/Components/JACK-insert.component/Contents/MacOS/JACK-insert',
'Library/Audio/Plug-Ins/VST/JACK-insert.vst/Contents/MacOS/JACK-insert',
'Library/Frameworks/Jackmp.framework/Jackmp',
'Library/Frameworks/Jackmp.framework/Versions/A/Jackmp'].each do |f|
system "install_name_tool", "-change",
"/Library/Frameworks/Jackmp.framework/Versions/A/Jackmp",
prefix+"Frameworks/Jackmp.framework/Versions/A/Jackmp", f
end
Dir['usr/local/bin/jackd*', 'usr/local/lib/jackmp/*.so',
'/Library/Frameworks/Jackservermp.framework/Versions/A/Jackservermp',
'/Library/Frameworks/Jackservermp.framework/Jackservermp'].each do |f|
system "install_name_tool", "-change",
"/Library/Frameworks/Jackservermp.framework/Versions/A/Jackservermp",
prefix+"Frameworks/Jackservermp.framework/Versions/A/Jackservermp", f
end
lib.install Dir['usr/local/lib/*']
bin.install Dir['usr/local/bin/*']
include.install Dir['usr/local/include/*']
prefix.install 'Library/Frameworks'
prefix.install 'Library/Audio'
ln_s prefix+'Frameworks/Jackmp.framework/Jackmp',
lib+'libjack.0.dylib', :force => true
ln_s prefix+'Frameworks/Jackmp.framework/Jackmp',
lib+'libjack.dylib', :force => true
ln_s prefix+'Frameworks/Jackservermp.framework/Jackservermp',
lib+'libjackserver.0.dylib', :force => true
ln_s prefix+'Frameworks/Jackservermp.framework/Jackservermp',
lib+'libjackserver.dylib', :force => true
end
def caveats; <<-EOS
The JackRouter CoreAudio device is located in jack/0.90/Audio/Plug-Ins/HAL/JackRouter.plugin
within the Homebrew Cellar. Link this into /Library/Audio to install (requires restart.)
ie: sudo ln -s #{HOMEBREW_PREFIX}/Cellar/jack/0.90/Audio/Plug-Ins/HAL/JackRouter.plugin /Library/Audio/Plug-Ins/HAL/
(you make need to make the parent directories first.)
Also included within the Audio subfolder are an AudioUnit and VST plugin.
EOS
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment