Module: Purple
- Defined in:
- lib/purple.rb,
lib/purple/osx.rb,
lib/purple/util.rb,
lib/purple/debian.rb,
lib/purple/getter.rb,
lib/purple/script.rb,
lib/purple/matches.rb,
lib/purple/process.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, Run, Util 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
218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 |
# File 'lib/purple.rb', line 218 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_path = File.join(cabinet.cabinet_dir, cabinet.name + '.purple') if FileTest.exist? purple_script_path raise 'purple script already exists' end Purple::Script.write cabinet, purple_script_path cabinet end |