5 $:.unshift 'lib' # force loading from ./lib/ if it exists
9 def extra_deps; @extra_deps.reject { |x| Array(x).first == "hoe" } end
10 end # thanks to "Mike H"
12 Hoe.new('sup', Redwood::VERSION) do |p|
13 p.rubyforge_name = 'sup'
14 p.author = "William Morgan"
15 p.summary = 'A console-based email client with the best features of GMail, mutt, and emacs. Features full text search, labels, tagged operations, multiple buffers, recent contacts, and more.'
16 p.description = p.paragraphs_of('README.txt', 2..9).join("\n\n")
17 p.url = p.paragraphs_of('README.txt', 0).first.split(/\n/)[2].gsub(/^\s+/, "")
18 p.changes = p.paragraphs_of('History.txt', 0..0).join("\n\n")
19 p.email = "wmorgan-sup@masanjin.net"
20 p.extra_deps = [['ferret', '>= 0.10.13'], ['ncurses', '>= 0.9.1'], ['rmail', '>= 0.17'], 'highline', 'net-ssh', ['trollop', '>= 1.7'], 'lockfile', 'mime-types']
23 rule 'ss?.png' => 'ss?-small.png' do |t|
26 ## is there really no way to make a rule for this?
27 WWW_FILES = %w(www/index.html README.txt doc/Philosophy.txt doc/FAQ.txt doc/NewUserGuide.txt www/main.css)
29 SCREENSHOTS = FileList["www/ss?.png"]
30 SCREENSHOTS_SMALL = []
31 SCREENSHOTS.each do |fn|
33 sfn = "www/ss#{$1}-small.png"
34 file sfn => [fn] do |t|
35 sh "cat #{fn} | pngtopnm | pnmscale -xysize 320 240 | pnmtopng > #{sfn}"
37 SCREENSHOTS_SMALL << sfn
40 task :upload_webpage => WWW_FILES do |t|
41 sh "scp -C #{t.prerequisites * ' '} wmorgan@rubyforge.org:/var/www/gforge-projects/sup/"
44 task :upload_webpage_images => (SCREENSHOTS + SCREENSHOTS_SMALL) do |t|
45 sh "scp -C #{t.prerequisites * ' '} wmorgan@rubyforge.org:/var/www/gforge-projects/sup/"