import blog
+from blog import meta
+
def main():
otel.configure_logging(logging.INFO)
parser = argparse.ArgumentParser()
parser.add_argument("--key-cert", nargs=2, metavar=("KEY", "CERT",), help="Path to a key and a file")
+ parser.add_argument("schema")
+ parser.add_argument("host")
args = parser.parse_args()
+ meta.SCHEMA = args.schema
+ meta.HOST = args.host
if args.key_cert:
key, cert = args.key_cert
url = gem_element.url
if url.startswith("gemini://"):
if url.startswith("gemini://alex.corcoles.net/"):
- url = url.replace("gemini://alex.corcoles.net/", meta.BASE_URL + "/")
+ url = url.replace("gemini://alex.corcoles.net/", f"{meta.SCHEMA}://{meta.HOST}/")
else:
url = url.replace("gemini://", "https://portal.mozz.us/gemini/")
fg = feed.FeedGenerator()
fg.title(meta.TITLE)
fg.subtitle(meta.SUBTITLE)
- fg.link(href=meta.BASE_URL, rel="self")
+ fg.link(href=f"{meta.SCHEMA}://{meta.HOST}", rel="self")
for entry in self.entries()[0:10]:
fe = fg.add_entry()
- url = f"{meta.BASE_URL}{entry.uri}"
+ url = f"{meta.SCHEMA}://{meta.HOST}/{entry.uri}"
fe.link(href=url)
fe.published(datetime.datetime.combine(entry.posted, datetime.datetime.min.time(), tzinfo=datetime.timezone.utc))
fe.title(entry.title)
def html_template(*content, page_title=None):
- title = [h.A(meta.TITLE, href=meta.BASE_URL)]
+ title = [h.A(meta.TITLE, href=f"{meta.SCHEMA}://{meta.HOST}")]
if page_title:
title += f" - {page_title}"
h.HTML(
h.HEAD(
h.TITLE(meta.TITLE + (f" - {page_title}" if page_title else "")),
- h.LINK(rel="alternate", type="application/rss+xml", title=meta.TITLE, href=f"{meta.BASE_URL}/feed/"),
+ h.LINK(rel="alternate", type="application/rss+xml", title=meta.TITLE, href=f"{meta.SCHEMA}://{meta.HOST}/feed/"),
),
h.BODY(
h.H1(title),
TITLE = "El blog es mío"
SUBTITLE = "Hay otros como él, pero este es el mío"
-BASE_URL = "https://blog.pdp7.net"
+HOST = None
+SCHEMA = None
LINKS = (
("GitHub", "https://github.com/alexpdp7/"),
- python
- -m
- blog
+ - https
+ - blog.pdp7.net
image: quay.io/alexpdp7/blog:latest
imagePullPolicy: Always
name: blog