#!/usr/bin/env ruby require 'json' require_relative 'lib' PICTURE_PATH = '/srv/media/pictures' WEBP_PATH = File.join PICTURE_PATH, 'webp' TXT_PATH = File.join PICTURE_PATH, 'txt' COLLECTION_PATH = File.join PICTURE_PATH, 'collections' PICTURE_URL = 'https://media.pdp8.info/pictures' WEBP_URL = File.join PICTURE_URL, 'webp' JPEG_URL = File.join PICTURE_URL, 'jpeg' html = File.read(File.join(SNIPPETS, 'head.html')) html += nav 'pictures' Dir[File.join COLLECTION_PATH, '*'] .sort_by { |c| File.mtime c } .reverse.each do |collection| html += "
" html += "

#{collection.gsub('_', ' ')}

\n" File.readlines(collection, chomp: true).each do |line| basename = File.basename(line, File.extname(line)) path = File.join(WEBP_PATH, basename + '.webp') url = File.join(WEBP_URL, basename + '.webp') alt = File.read(File.join(TXT_PATH, basename, '.txt')) src = File.join(JPEG_URL, basename + File.extname(url)) w, h = `/etc/profiles/per-user/ch/bin/identify -format "%w %h" #{path}`.chomp.split(' ') html += "