96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
|
# File 'lib/opal/cache/file_cache.rb', line 96
def self.find_dir
@find_dir ||= case
when dir = ENV['OPAL_CACHE_DIR']
FileUtils.mkdir_p(dir)
dir
when dir = dir_writable?(Dir.home, '.cache', 'opal')
FileUtils.mkdir_p(dir)
FileUtils.chmod(0o700, dir)
dir
when (dir = dir_writable?('/tmp', "opal-cache-#{ENV['USER']}")) && File.sticky?('/tmp')
FileUtils.mkdir_p(dir)
FileUtils.chmod(0o700, dir)
dir
else
warn "Couldn't find a writable path to store Opal cache. " \
'Try setting OPAL_CACHE_DIR environment variable'
nil
end
end
|