X-Git-Url: https://git.draconx.ca/gitweb/homepage.git/blobdiff_plain/00a9b42301aeb19c08c43f3774dd4e2e27945b5e..0015d84bea1204b4534e5568ff7c0920b9ef02b7:/Rules diff --git a/Rules b/Rules index e00c5f3..d3247cb 100644 --- a/Rules +++ b/Rules @@ -16,10 +16,12 @@ # along with this program. If not, see . preprocess do + system("git", "submodule", "update", "--init") + # Remove dead annex keys from processing @items.delete_if do |item| - l = File.readlink(item.raw_filename) - true if !File.exists?(item.raw_filename) and l =~ %r{/annex/objects/} + l = File.readlink(item.raw_filename) + true if !File.exists?(item.raw_filename) and l =~ %r{/annex/objects/} rescue Errno::EINVAL end @@ -47,6 +49,25 @@ preprocess do item[:updated_at] ||= item[:updated] || File.stat(item.raw_filename).mtime end + + archivedirs = {} + @items.find_all('/archive/**/*').each do |item| + dir = File.dirname(item.identifier) + while dir != "/" + archivedirs[dir] = true + dir = File.dirname(dir) + end + end + + archivedirs.keys.sort_by{ |s| -s.length }.each do |dir| + attrs = { + pattern: "#{dir}/*{,/index.lst}", + title: "Index of #{dir}", + gitrev: commit, + } + + @items.create("", attrs, "#{dir}/index.lst") + end end postprocess do @@ -67,8 +88,11 @@ postprocess do # Register URLs for git-annex keys unless (uribase = ENV['ANNEX_URI_BASE'].to_s.chomp("/")).empty? - Open3.popen2("git", "annex", "registerurl") do |stdin, stdout, result| + Open3.popen2("git", "-c", "core.bare=false", "annex", "registerurl") do + |stdin, stdout, result| @items.each do |item| + next if item.raw_filename.nil? + l = File.readlink(item.raw_filename) next unless l =~ %r{/annex/objects/} @@ -104,6 +128,16 @@ postprocess do end end +compile '/**/index.lst' do + layout '/listing.erb' + layout '/default.xml' + layout '/default.xsl' + layout '/embed-svg.xsl' + filter :relativize_paths, type: :xml + filter :xhtml_compat, fix_doctype: true + write item.identifier.without_ext + ".xhtml" +end + compile '/license/gpl*.md' do filter :kramdown, auto_ids: false, header_offset: -1 layout '/default.xml' @@ -111,7 +145,6 @@ compile '/license/gpl*.md' do layout '/default.xsl' filter :relativize_paths, type: :xml filter :xhtml_compat - filter :remove_wj write to_xhtml end @@ -123,7 +156,6 @@ compile '/**/*.md' do layout '/default.xsl' filter :relativize_paths, type: :xml filter :xhtml_compat - filter :remove_wj write to_xhtml end @@ -134,7 +166,6 @@ compile '/license/cc*.sgml' do layout '/default.xsl', "section-links": "yes" filter :relativize_paths, type: :xml filter :xhtml_compat - filter :remove_wj write to_xhtml end @@ -144,7 +175,6 @@ compile '/license/cc*.xhtml' do layout '/default.xsl', "section-links": "yes" filter :relativize_paths, type: :xml filter :xhtml_compat - filter :remove_wj write to_xhtml end @@ -161,7 +191,6 @@ compile '/images/*.jpg', rep: :info do layout '/default.xsl' filter :relativize_paths, type: :xml filter :xhtml_compat - filter :remove_wj write to_xhtml end @@ -176,6 +205,16 @@ compile '/**/*.scss' do write @item.identifier.without_ext + '.css' end +compile '/**/*.svg' do + filter :scour, comment_stripping: true + write @item.identifier.to_s +end + +compile '/icons/**/*.svg', rep: :icon32 do + filter :svg2png, width: 32, height: 32 + write @item.identifier.without_ext + "-32.png" +end + compile '/**/*' do filter :copybin if @item.binary? write @item.identifier.to_s