Module: Purple
- Defined in:
- lib/purple.rb,
lib/purple/osx.rb,
lib/purple/getter.rb,
lib/purple/script.rb,
lib/purple/matches.rb,
lib/purple/makefile.rb,
lib/purple/platform.rb,
lib/purple/getter_cp.rb,
lib/purple/getter_wget.rb,
lib/purple/pkg_actions.rb
Defined Under Namespace
Modules: Getter, Matches, PackageActions, Platform
Classes: MakefileMaven, PackageInfo, PurpleCabinet, PurpleFile, Script
Constant Summary
collapse
- PURPLE_FOLDER =
"#{ENV['HOME']}/purple"
- PACKAGE_DESCRIPTION_TEMPLATE =
proc do |pkg| <<EOS
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>IFPkgDescriptionTitle</key>
<string>#{pkg.name}</string>
<key>IFPkgDescriptionVersion</key>
<string>#{pkg.version}</string>
</dict>
</plist>
EOS
end
- PACKAGE_INFO_TEMPLATE =
proc do |pkg| <<EOS
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<!--
<key></key>
<string></string>
***
-->
<key>CFBundleGetInfoString</key>
<string>#{pkg.info_string}</string>
<key>CFBundleIdentifier</key>
<string>#{pkg.identifier}</string>
<key>CFBundleName</key>
<string>#{pkg.name}</string>
<key>CFBundleShortVersionString</key>
<string>#{pkg.version}</string>
<key>IFMajorVersion</key>
<integer>#{pkg.major}</integer>
<key>IFMinorVersion</key>
<integer>#{pkg.minor}</integer>
<key>IFPkgFlagAllowBackRev</key>
<false/>
<key>IFPkgFlagAuthorizationAction</key>
<string>AdminAuthorization</string>
<key>IFPkgFlagDefaultLocation</key>
<string>/</string>
<key>IFPkgFlagInstallFat</key>
<false/>
<key>IFPkgFlagIsRequired</key>
<false/>
<key>IFPkgFlagOverwritePermissions</key>
<true/>
<key>IFPkgFlagRelocatable</key>
<false/>
<key>IFPkgFlagRestartAction</key>
<string>NoRestart</string>
<key>IFPkgFlagRootVolumeOnly</key>
<true/>
<key>IFPkgFlagUpdateInstalledLanguages</key>
<false/>
<key>IFPkgFlagUseUserMask</key>
<false/>
<key>IFPkgFormatVersion</key>
<real>0.10000000149011612</real>
</dict>
</plist>
EOS
end
Class Method Summary
collapse
Class Method Details
.cabinet_from_url(url) ⇒ Object
196
197
198
199
200
201
202
203
204
205
206
207
|
# File 'lib/purple.rb', line 196
def self.cabinet_from_url url
cabinet = Purple::Script.parse(<<-EOS
url #{url.inspect}
package # {|pkg| pkg.infer }
infer_all
EOS
)
cabinet.setup
Purple::Script.write cabinet, File.join(cabinet.cabinet_dir, cabinet.name + '.purple')
cabinet
end
|
.sys(cmd) ⇒ Object
209
210
211
|
# File 'lib/purple.rb', line 209
def self.sys cmd
system cmd
end
|