diff options
| author | Markus Reiter | 2016-09-24 13:52:43 +0200 |
|---|---|---|
| committer | Markus Reiter | 2016-09-24 16:00:58 +0200 |
| commit | b86c8efb79b3ed835d552c4d7416640ef10caf21 (patch) | |
| tree | 7e1edc8a8f339e4d2781f43576d40c9c79aebcdc /Library/Homebrew/cask/lib/hbc/macos.rb | |
| parent | 687f0fcf721c8e36f32570ed72d0988a6eaf986f (diff) | |
| download | brew-b86c8efb79b3ed835d552c4d7416640ef10caf21.tar.bz2 | |
Cask: Use nested classes and modules.
Diffstat (limited to 'Library/Homebrew/cask/lib/hbc/macos.rb')
| -rw-r--r-- | Library/Homebrew/cask/lib/hbc/macos.rb | 738 |
1 files changed, 369 insertions, 369 deletions
diff --git a/Library/Homebrew/cask/lib/hbc/macos.rb b/Library/Homebrew/cask/lib/hbc/macos.rb index 5e25c657e..fb15be108 100644 --- a/Library/Homebrew/cask/lib/hbc/macos.rb +++ b/Library/Homebrew/cask/lib/hbc/macos.rb @@ -2,377 +2,377 @@ require "set" require "os/mac/version" -module OS::Mac - SYSTEM_DIRS = [ - "/", - "/Applications", - "/Applications/Utilities", - "/Incompatible Software", - "/Library", - "/Library/Application Support", - "/Library/Audio", - "/Library/Caches", - "/Library/ColorPickers", - "/Library/ColorSync", - "/Library/Components", - "/Library/Compositions", - "/Library/Contextual Menu Items", - "/Library/CoreMediaIO", - "/Library/Desktop Pictures", - "/Library/Developer", - "/Library/Dictionaries", - "/Library/DirectoryServices", - "/Library/Documentation", - "/Library/Extensions", - "/Library/Filesystems", - "/Library/Fonts", - "/Library/Frameworks", - "/Library/Graphics", - "/Library/Image Capture", - "/Library/Input Methods", - "/Library/Internet Plug-Ins", - "/Library/Java", - "/Library/Keyboard Layouts", - "/Library/Keychains", - "/Library/LaunchAgents", - "/Library/LaunchDaemons", - "/Library/Logs", - "/Library/Messages", - "/Library/Modem Scripts", - "/Library/OpenDirectory", - "/Library/PDF Services", - "/Library/Perl", - "/Library/PreferencePanes", - "/Library/Preferences", - "/Library/Printers", - "/Library/PrivilegedHelperTools", - "/Library/Python", - "/Library/QuickLook", - "/Library/QuickTime", - "/Library/Receipts", - "/Library/Ruby", - "/Library/Sandbox", - "/Library/Screen Savers", - "/Library/ScriptingAdditions", - "/Library/Scripts", - "/Library/Security", - "/Library/Speech", - "/Library/Spelling", - "/Library/Spotlight", - "/Library/StartupItems", - "/Library/SystemProfiler", - "/Library/Updates", - "/Library/User Pictures", - "/Library/Video", - "/Library/WebServer", - "/Library/Widgets", - "/Library/iTunes", - "/Network", - "/System", - "/System/Library", - "/System/Library/Accessibility", - "/System/Library/Accounts", - "/System/Library/Address Book Plug-Ins", - "/System/Library/Assistant", - "/System/Library/Automator", - "/System/Library/BridgeSupport", - "/System/Library/Caches", - "/System/Library/ColorPickers", - "/System/Library/ColorSync", - "/System/Library/Colors", - "/System/Library/Components", - "/System/Library/Compositions", - "/System/Library/CoreServices", - "/System/Library/DTDs", - "/System/Library/DirectoryServices", - "/System/Library/Displays", - "/System/Library/Extensions", - "/System/Library/Filesystems", - "/System/Library/Filters", - "/System/Library/Fonts", - "/System/Library/Frameworks", - "/System/Library/Graphics", - "/System/Library/IdentityServices", - "/System/Library/Image Capture", - "/System/Library/Input Methods", - "/System/Library/InternetAccounts", - "/System/Library/Java", - "/System/Library/KerberosPlugins", - "/System/Library/Keyboard Layouts", - "/System/Library/Keychains", - "/System/Library/LaunchAgents", - "/System/Library/LaunchDaemons", - "/System/Library/LinguisticData", - "/System/Library/LocationBundles", - "/System/Library/LoginPlugins", - "/System/Library/Messages", - "/System/Library/Metadata", - "/System/Library/MonitorPanels", - "/System/Library/OpenDirectory", - "/System/Library/OpenSSL", - "/System/Library/Password Server Filters", - "/System/Library/PerformanceMetrics", - "/System/Library/Perl", - "/System/Library/PreferencePanes", - "/System/Library/Printers", - "/System/Library/PrivateFrameworks", - "/System/Library/QuickLook", - "/System/Library/QuickTime", - "/System/Library/QuickTimeJava", - "/System/Library/Recents", - "/System/Library/SDKSettingsPlist", - "/System/Library/Sandbox", - "/System/Library/Screen Savers", - "/System/Library/ScreenReader", - "/System/Library/ScriptingAdditions", - "/System/Library/ScriptingDefinitions", - "/System/Library/Security", - "/System/Library/Services", - "/System/Library/Sounds", - "/System/Library/Speech", - "/System/Library/Spelling", - "/System/Library/Spotlight", - "/System/Library/StartupItems", - "/System/Library/SyncServices", - "/System/Library/SystemConfiguration", - "/System/Library/SystemProfiler", - "/System/Library/Tcl", - "/System/Library/TextEncodings", - "/System/Library/User Template", - "/System/Library/UserEventPlugins", - "/System/Library/Video", - "/System/Library/WidgetResources", - "/User Information", - "/Users", - "/Volumes", - "/bin", - "/boot", - "/cores", - "/dev", - "/etc", - "/etc/X11", - "/etc/opt", - "/etc/sgml", - "/etc/xml", - "/home", - "/libexec", - "/lost+found", - "/media", - "/mnt", - "/net", - "/opt", - "/private", - "/private/etc", - "/private/tftpboot", - "/private/tmp", - "/private/var", - "/proc", - "/root", - "/sbin", - "/srv", - "/tmp", - "/usr", - "/usr/X11R6", - "/usr/bin", - "/usr/etc", - "/usr/include", - "/usr/lib", - "/usr/libexec", - "/usr/local", - "/usr/local/Cellar", - "/usr/local/Frameworks", - "/usr/local/Library", - "/usr/local/bin", - "/usr/local/etc", - "/usr/local/include", - "/usr/local/lib", - "/usr/local/libexec", - "/usr/local/opt", - "/usr/local/share", - "/usr/local/share/man", - "/usr/local/share/man/man1", - "/usr/local/share/man/man2", - "/usr/local/share/man/man3", - "/usr/local/share/man/man4", - "/usr/local/share/man/man5", - "/usr/local/share/man/man6", - "/usr/local/share/man/man7", - "/usr/local/share/man/man8", - "/usr/local/share/man/man9", - "/usr/local/share/man/mann", - "/usr/local/var", - "/usr/local/var/lib", - "/usr/local/var/lock", - "/usr/local/var/run", - "/usr/sbin", - "/usr/share", - "/usr/share/man", - "/usr/share/man/man1", - "/usr/share/man/man2", - "/usr/share/man/man3", - "/usr/share/man/man4", - "/usr/share/man/man5", - "/usr/share/man/man6", - "/usr/share/man/man7", - "/usr/share/man/man8", - "/usr/share/man/man9", - "/usr/share/man/mann", - "/usr/src", - "/var", - "/var/cache", - "/var/lib", - "/var/lock", - "/var/log", - "/var/mail", - "/var/run", - "/var/spool", - "/var/spool/mail", - "/var/tmp", - ] - .map(&method(:Pathname)) - .to_set - .freeze +module OS + module Mac + SYSTEM_DIRS = [ + "/", + "/Applications", + "/Applications/Utilities", + "/Incompatible Software", + "/Library", + "/Library/Application Support", + "/Library/Audio", + "/Library/Caches", + "/Library/ColorPickers", + "/Library/ColorSync", + "/Library/Components", + "/Library/Compositions", + "/Library/Contextual Menu Items", + "/Library/CoreMediaIO", + "/Library/Desktop Pictures", + "/Library/Developer", + "/Library/Dictionaries", + "/Library/DirectoryServices", + "/Library/Documentation", + "/Library/Extensions", + "/Library/Filesystems", + "/Library/Fonts", + "/Library/Frameworks", + "/Library/Graphics", + "/Library/Image Capture", + "/Library/Input Methods", + "/Library/Internet Plug-Ins", + "/Library/Java", + "/Library/Keyboard Layouts", + "/Library/Keychains", + "/Library/LaunchAgents", + "/Library/LaunchDaemons", + "/Library/Logs", + "/Library/Messages", + "/Library/Modem Scripts", + "/Library/OpenDirectory", + "/Library/PDF Services", + "/Library/Perl", + "/Library/PreferencePanes", + "/Library/Preferences", + "/Library/Printers", + "/Library/PrivilegedHelperTools", + "/Library/Python", + "/Library/QuickLook", + "/Library/QuickTime", + "/Library/Receipts", + "/Library/Ruby", + "/Library/Sandbox", + "/Library/Screen Savers", + "/Library/ScriptingAdditions", + "/Library/Scripts", + "/Library/Security", + "/Library/Speech", + "/Library/Spelling", + "/Library/Spotlight", + "/Library/StartupItems", + "/Library/SystemProfiler", + "/Library/Updates", + "/Library/User Pictures", + "/Library/Video", + "/Library/WebServer", + "/Library/Widgets", + "/Library/iTunes", + "/Network", + "/System", + "/System/Library", + "/System/Library/Accessibility", + "/System/Library/Accounts", + "/System/Library/Address Book Plug-Ins", + "/System/Library/Assistant", + "/System/Library/Automator", + "/System/Library/BridgeSupport", + "/System/Library/Caches", + "/System/Library/ColorPickers", + "/System/Library/ColorSync", + "/System/Library/Colors", + "/System/Library/Components", + "/System/Library/Compositions", + "/System/Library/CoreServices", + "/System/Library/DTDs", + "/System/Library/DirectoryServices", + "/System/Library/Displays", + "/System/Library/Extensions", + "/System/Library/Filesystems", + "/System/Library/Filters", + "/System/Library/Fonts", + "/System/Library/Frameworks", + "/System/Library/Graphics", + "/System/Library/IdentityServices", + "/System/Library/Image Capture", + "/System/Library/Input Methods", + "/System/Library/InternetAccounts", + "/System/Library/Java", + "/System/Library/KerberosPlugins", + "/System/Library/Keyboard Layouts", + "/System/Library/Keychains", + "/System/Library/LaunchAgents", + "/System/Library/LaunchDaemons", + "/System/Library/LinguisticData", + "/System/Library/LocationBundles", + "/System/Library/LoginPlugins", + "/System/Library/Messages", + "/System/Library/Metadata", + "/System/Library/MonitorPanels", + "/System/Library/OpenDirectory", + "/System/Library/OpenSSL", + "/System/Library/Password Server Filters", + "/System/Library/PerformanceMetrics", + "/System/Library/Perl", + "/System/Library/PreferencePanes", + "/System/Library/Printers", + "/System/Library/PrivateFrameworks", + "/System/Library/QuickLook", + "/System/Library/QuickTime", + "/System/Library/QuickTimeJava", + "/System/Library/Recents", + "/System/Library/SDKSettingsPlist", + "/System/Library/Sandbox", + "/System/Library/Screen Savers", + "/System/Library/ScreenReader", + "/System/Library/ScriptingAdditions", + "/System/Library/ScriptingDefinitions", + "/System/Library/Security", + "/System/Library/Services", + "/System/Library/Sounds", + "/System/Library/Speech", + "/System/Library/Spelling", + "/System/Library/Spotlight", + "/System/Library/StartupItems", + "/System/Library/SyncServices", + "/System/Library/SystemConfiguration", + "/System/Library/SystemProfiler", + "/System/Library/Tcl", + "/System/Library/TextEncodings", + "/System/Library/User Template", + "/System/Library/UserEventPlugins", + "/System/Library/Video", + "/System/Library/WidgetResources", + "/User Information", + "/Users", + "/Volumes", + "/bin", + "/boot", + "/cores", + "/dev", + "/etc", + "/etc/X11", + "/etc/opt", + "/etc/sgml", + "/etc/xml", + "/home", + "/libexec", + "/lost+found", + "/media", + "/mnt", + "/net", + "/opt", + "/private", + "/private/etc", + "/private/tftpboot", + "/private/tmp", + "/private/var", + "/proc", + "/root", + "/sbin", + "/srv", + "/tmp", + "/usr", + "/usr/X11R6", + "/usr/bin", + "/usr/etc", + "/usr/include", + "/usr/lib", + "/usr/libexec", + "/usr/local", + "/usr/local/Cellar", + "/usr/local/Frameworks", + "/usr/local/Library", + "/usr/local/bin", + "/usr/local/etc", + "/usr/local/include", + "/usr/local/lib", + "/usr/local/libexec", + "/usr/local/opt", + "/usr/local/share", + "/usr/local/share/man", + "/usr/local/share/man/man1", + "/usr/local/share/man/man2", + "/usr/local/share/man/man3", + "/usr/local/share/man/man4", + "/usr/local/share/man/man5", + "/usr/local/share/man/man6", + "/usr/local/share/man/man7", + "/usr/local/share/man/man8", + "/usr/local/share/man/man9", + "/usr/local/share/man/mann", + "/usr/local/var", + "/usr/local/var/lib", + "/usr/local/var/lock", + "/usr/local/var/run", + "/usr/sbin", + "/usr/share", + "/usr/share/man", + "/usr/share/man/man1", + "/usr/share/man/man2", + "/usr/share/man/man3", + "/usr/share/man/man4", + "/usr/share/man/man5", + "/usr/share/man/man6", + "/usr/share/man/man7", + "/usr/share/man/man8", + "/usr/share/man/man9", + "/usr/share/man/mann", + "/usr/src", + "/var", + "/var/cache", + "/var/lib", + "/var/lock", + "/var/log", + "/var/mail", + "/var/run", + "/var/spool", + "/var/spool/mail", + "/var/tmp", + ] + .map(&method(:Pathname)) + .to_set + .freeze - # TODO: There should be a way to specify a containing - # directory under which nothing can be deleted. - UNDELETABLE_DIRS = [ - "~/", - "~/Applications", - "~/Desktop", - "~/Documents", - "~/Downloads", - "~/Mail", - "~/Movies", - "~/Music", - "~/Music/iTunes", - "~/Music/iTunes/iTunes Music", - "~/Music/iTunes/Album Artwork", - "~/News", - "~/Pictures", - "~/Pictures/Desktops", - "~/Pictures/Photo Booth", - "~/Pictures/iChat Icons", - "~/Pictures/iPhoto Library", - "~/Public", - "~/Sites", - "~/Library", - "~/Library/.localized", - "~/Library/Accessibility", - "~/Library/Accounts", - "~/Library/Address Book Plug-Ins", - "~/Library/Application Scripts", - "~/Library/Application Support", - "~/Library/Application Support/Apple", - "~/Library/Application Support/com.apple.AssistiveControl", - "~/Library/Application Support/com.apple.QuickLook", - "~/Library/Application Support/com.apple.TCC", - "~/Library/Assistants", - "~/Library/Audio", - "~/Library/Automator", - "~/Library/Autosave Information", - "~/Library/Caches", - "~/Library/Calendars", - "~/Library/ColorPickers", - "~/Library/ColorSync", - "~/Library/Colors", - "~/Library/Components", - "~/Library/Compositions", - "~/Library/Containers", - "~/Library/Contextual Menu Items", - "~/Library/Cookies", - "~/Library/DTDs", - "~/Library/Desktop Pictures", - "~/Library/Developer", - "~/Library/Dictionaries", - "~/Library/DirectoryServices", - "~/Library/Displays", - "~/Library/Documentation", - "~/Library/Extensions", - "~/Library/Favorites", - "~/Library/FileSync", - "~/Library/Filesystems", - "~/Library/Filters", - "~/Library/FontCollections", - "~/Library/Fonts", - "~/Library/Frameworks", - "~/Library/GameKit", - "~/Library/Graphics", - "~/Library/Group Containers", - "~/Library/Icons", - "~/Library/IdentityServices", - "~/Library/Image Capture", - "~/Library/Images", - "~/Library/Input Methods", - "~/Library/Internet Plug-Ins", - "~/Library/InternetAccounts", - "~/Library/iTunes", - "~/Library/KeyBindings", - "~/Library/Keyboard Layouts", - "~/Library/Keychains", - "~/Library/LaunchAgents", - "~/Library/LaunchDaemons", - "~/Library/LocationBundles", - "~/Library/LoginPlugins", - "~/Library/Logs", - "~/Library/Mail", - "~/Library/Mail Downloads", - "~/Library/Messages", - "~/Library/Metadata", - "~/Library/Mobile Documents", - "~/Library/MonitorPanels", - "~/Library/OpenDirectory", - "~/Library/PDF Services", - "~/Library/PhonePlugins", - "~/Library/Phones", - "~/Library/PreferencePanes", - "~/Library/Preferences", - "~/Library/Printers", - "~/Library/PrivateFrameworks", - "~/Library/PubSub", - "~/Library/QuickLook", - "~/Library/QuickTime", - "~/Library/Receipts", - "~/Library/Recent Servers", - "~/Library/Recents", - "~/Library/Safari", - "~/Library/Saved Application State", - "~/Library/Screen Savers", - "~/Library/ScreenReader", - "~/Library/ScriptingAdditions", - "~/Library/ScriptingDefinitions", - "~/Library/Scripts", - "~/Library/Security", - "~/Library/Services", - "~/Library/Sounds", - "~/Library/Speech", - "~/Library/Spelling", - "~/Library/Spotlight", - "~/Library/StartupItems", - "~/Library/StickiesDatabase", - "~/Library/Sync Services", - "~/Library/SyncServices", - "~/Library/SyncedPreferences", - "~/Library/TextEncodings", - "~/Library/User Pictures", - "~/Library/Video", - "~/Library/Voices", - "~/Library/WebKit", - "~/Library/WidgetResources", - "~/Library/Widgets", - "~/Library/Workflows", - ] - .map { |x| Pathname(x.sub(%r{^~(?=(/|$))}, Dir.home)).expand_path } - .to_set - .union(SYSTEM_DIRS) - .freeze + # TODO: There should be a way to specify a containing + # directory under which nothing can be deleted. + UNDELETABLE_DIRS = [ + "~/", + "~/Applications", + "~/Desktop", + "~/Documents", + "~/Downloads", + "~/Mail", + "~/Movies", + "~/Music", + "~/Music/iTunes", + "~/Music/iTunes/iTunes Music", + "~/Music/iTunes/Album Artwork", + "~/News", + "~/Pictures", + "~/Pictures/Desktops", + "~/Pictures/Photo Booth", + "~/Pictures/iChat Icons", + "~/Pictures/iPhoto Library", + "~/Public", + "~/Sites", + "~/Library", + "~/Library/.localized", + "~/Library/Accessibility", + "~/Library/Accounts", + "~/Library/Address Book Plug-Ins", + "~/Library/Application Scripts", + "~/Library/Application Support", + "~/Library/Application Support/Apple", + "~/Library/Application Support/com.apple.AssistiveControl", + "~/Library/Application Support/com.apple.QuickLook", + "~/Library/Application Support/com.apple.TCC", + "~/Library/Assistants", + "~/Library/Audio", + "~/Library/Automator", + "~/Library/Autosave Information", + "~/Library/Caches", + "~/Library/Calendars", + "~/Library/ColorPickers", + "~/Library/ColorSync", + "~/Library/Colors", + "~/Library/Components", + "~/Library/Compositions", + "~/Library/Containers", + "~/Library/Contextual Menu Items", + "~/Library/Cookies", + "~/Library/DTDs", + "~/Library/Desktop Pictures", + "~/Library/Developer", + "~/Library/Dictionaries", + "~/Library/DirectoryServices", + "~/Library/Displays", + "~/Library/Documentation", + "~/Library/Extensions", + "~/Library/Favorites", + "~/Library/FileSync", + "~/Library/Filesystems", + "~/Library/Filters", + "~/Library/FontCollections", + "~/Library/Fonts", + "~/Library/Frameworks", + "~/Library/GameKit", + "~/Library/Graphics", + "~/Library/Group Containers", + "~/Library/Icons", + "~/Library/IdentityServices", + "~/Library/Image Capture", + "~/Library/Images", + "~/Library/Input Methods", + "~/Library/Internet Plug-Ins", + "~/Library/InternetAccounts", + "~/Library/iTunes", + "~/Library/KeyBindings", + "~/Library/Keyboard Layouts", + "~/Library/Keychains", + "~/Library/LaunchAgents", + "~/Library/LaunchDaemons", + "~/Library/LocationBundles", + "~/Library/LoginPlugins", + "~/Library/Logs", + "~/Library/Mail", + "~/Library/Mail Downloads", + "~/Library/Messages", + "~/Library/Metadata", + "~/Library/Mobile Documents", + "~/Library/MonitorPanels", + "~/Library/OpenDirectory", + "~/Library/PDF Services", + "~/Library/PhonePlugins", + "~/Library/Phones", + "~/Library/PreferencePanes", + "~/Library/Preferences", + "~/Library/Printers", + "~/Library/PrivateFrameworks", + "~/Library/PubSub", + "~/Library/QuickLook", + "~/Library/QuickTime", + "~/Library/Receipts", + "~/Library/Recent Servers", + "~/Library/Recents", + "~/Library/Safari", + "~/Library/Saved Application State", + "~/Library/Screen Savers", + "~/Library/ScreenReader", + "~/Library/ScriptingAdditions", + "~/Library/ScriptingDefinitions", + "~/Library/Scripts", + "~/Library/Security", + "~/Library/Services", + "~/Library/Sounds", + "~/Library/Speech", + "~/Library/Spelling", + "~/Library/Spotlight", + "~/Library/StartupItems", + "~/Library/StickiesDatabase", + "~/Library/Sync Services", + "~/Library/SyncServices", + "~/Library/SyncedPreferences", + "~/Library/TextEncodings", + "~/Library/User Pictures", + "~/Library/Video", + "~/Library/Voices", + "~/Library/WebKit", + "~/Library/WidgetResources", + "~/Library/Widgets", + "~/Library/Workflows", + ] + .map { |x| Pathname(x.sub(%r{^~(?=(/|$))}, Dir.home)).expand_path } + .to_set + .union(SYSTEM_DIRS) + .freeze - def system_dir?(dir) - SYSTEM_DIRS.include?(Pathname.new(dir).expand_path) - end + def system_dir?(dir) + SYSTEM_DIRS.include?(Pathname.new(dir).expand_path) + end - def undeletable?(dir) - UNDELETABLE_DIRS.include?(Pathname.new(dir).expand_path) + def undeletable?(dir) + UNDELETABLE_DIRS.include?(Pathname.new(dir).expand_path) + end end - - alias release version end |
