Commit Diff


commit - f12c4927d4f9203400143e64d0074ea64f8740df
commit + 661fff229562c1efa18f4260842b199f019d345a
blob - 940e7fc8e0d070a8602d61cd5b1fbbadc77b7e6f
blob + 247ee853a858dd49fa1f143232b0b63c6cf4ad9b
--- capsule/atom.xml
+++ capsule/atom.xml
@@ -8,7 +8,13 @@
         <name>continue</name>
         <email>continue@to.any-key.press</email>
     </author>
-    <updated>2024-09-22T18:53:03.298054+00:00</updated>
+    <updated>2024-09-28T06:45:45.841143+00:00</updated>
+    <entry>
+        <id>gemini://any-key.press/vostok/atom2gemfeed.gmi</id>
+        <link href="gemini://any-key.press/vostok/atom2gemfeed.gmi" rel="alternate"/>
+        <title>vostok 🚀 Gemini-лента публикаций из Atom-ленты</title>
+        <updated>2024-09-28T06:45:45.841143+00:00</updated>
+    </entry>
     <entry>
         <id>gemini://any-key.press/vostok/vgi_router.gmi</id>
         <link href="gemini://any-key.press/vostok/vgi_router.gmi" rel="alternate"/>
blob - b6d796e750ca49700ed8d181ca7a6a7ff8882dfb
blob + 0b56a73d2665d629f04ed2c535244e4904f9bbf4
--- capsule/index.gmi
+++ capsule/index.gmi
@@ -4,7 +4,8 @@
 
 Здесь я публикую что-то среднее между страницами дневника и техническими отчётами о проделанной работе моих домашних некоммерческих проектов.
 
-=> atom.xml Лента публикаций (Atom/XML)
+=> gemini://any-key.press/vgi/atom2gemfeed/?gemini%3A%2F%2Fany-key.press%2Fatom.xml Лента публикаций (Gemini feed)
+=> atom.xml Лента публикаций (Atom feed)
 
 
 ## Программирование
blob - /dev/null
blob + a8c1a0a456e9ef46bfcb99819e81cb191ed93e68 (mode 644)
--- /dev/null
+++ capsule/vostok/atom2gemfeed.gmi
@@ -0,0 +1,14 @@
+# Gemini-лента публикаций из Atom-ленты
+
+Уже довольно давно (ещё со времён ведения HTTP блога) я привык вести RSS/Atom ленту. Поэтому изначально, когда завёл Gemini капсулу и понял, что буду регулярно её пополнять, я решил добавить Atom ленту. Но недавно я перечила документ "Subscribing to Gemini pages":
+=> gemini://geminiprotocol.net/docs/companion/subscription.gmi
+
+Я еще раз ознакомился с форматом Gemini ленты и захотел такую для своей капсулы. Вести две ленты мне совершенно не хочется, но формировать Gemini feed из более строго XML (а Atom описывается именно в формате XML) показалось более логичным ходом. Сказано - сделано, 100 строк на python:
+
+=> gemini://any-key.press/vostok/atom2gemfeed.py Исходный код VGI скрипта atom2gemfeed.py
+
+Скрипт размещён в капсуле по адресу gemini://any-key.press/vgi/atom2gemfeed/ и ожидает, что в query-части URL будет передан URL адрес целевой Atom ленты. То есть, гипотетически, можно генерировать Gemini-ленту для любой капсулы, даже не размещая скрипт у себя. Например для Atom-ленты gemini://bbs.geminispace.org/s/russian?atom ссылка будет выглядеть так:
+
+=> gemini://any-key.press/vgi/atom2gemfeed/?gemini%3A//bbs.geminispace.org/s/russian%3Fatom
+
+А ссылку для генерации Gemini-ленты для своей Atom-ленты я разметил на заглавной странице своей капсулы.
blob - 3ee7b1c443e4a05f90474d1e44fe71f7f8785090
blob + 8e2c23cac696a8faee072c43cb7acd4e6cfc986f
--- capsule/vostok/index.gmi
+++ capsule/vostok/index.gmi
@@ -18,12 +18,18 @@ ______  ___   ___ _____  ___  _   __
 
 => how_to_run_on_openbsd.gmi Как запустить сервер vostok на OpenBSD
 => av98.gmi Gemini клиент AV-98
-=> vgi_router.gmi Маршрутизация VGI
 
 ## Блог разработки сервера vostok на русском языке
 
 => reports/ Блог разработки сервера vostok
 
+## VGI (CGI-like)
+
+Vostok's Gateway Interface
+
+=> vgi_router.gmi Маршрутизация VGI
+=> atom2gemfeed.gmi Gemini-лента публикаций из Atom-ленты
+
 ## Обратная связь
 
 Патчи, вопросы и предложения присылайте на электронную почту