이 블로그를 Gemini 프로토콜에서 읽어보세요
뻘짓의 시작 – 별로 중요한 얘기는 아닙니다
이전에 Gemini 프로토콜의 존재를 알게 되었습니다. 전 이 프로토콜이 굉장히 마음에 들었습니다. 웹 1.0 시기에 온 것 같은 기분이 들었고, 광고와 트래커가 없는 극단적인 단순함도 마음에 들었으며, 무엇보다 다른 기술을 대체하기 위해 등장한 기술이 아니기에 언제든지 존재할 것이라는 게 좋았습니다.
Gemini 프로토콜이 뭔가요?
구글의 그 LLM을 말하는 건 아니고, 2019년에 처음 공개된 HTTP와 같은 웹 문서를 위한 프로토콜입니다. 마크다운보다 단순한 마크업 형식과 스타일 시트, 클라이언트 사이드 스크립트의 부재와 같은 극단적인 단순함이 특징입니다. 더 알아보려면 영어 위키백과 문서를 참고해보세요.
Gemini 프로토콜을 알게 된 이후로 가끔씩 생각날 때 들러 구경하다가 직접 캡슐(Gemini 프로토콜에서는 웹사이트를 캡슐이라고 부릅니다)을 호스팅하기도 했습니다. 그러다 Ghost로 블로그를 개설하게 되었고, 열심히 운영하다가 지인이 아이디어를 주었습니다.
Ghost 플러그인으로 블로그를 Gemini로도 볼 수 있게 해봐라
홈 서버를 교체한 후 Gemini 캡슐 호스팅을 멈췄던 저는 이 아이디어를 받은지 꽤 시간이 지나고 한번 만들어보자 생각해보게 되었습니다.
결과물
플러그인 대신 다른 프록시 서버를 구축해서 따로 호스팅 해보자고 생각했고, CGI 스크립트를 지원하는 Gemini 프로토콜 서버인 Jetforce를 선택했습니다. CGI는 요즘 쓰는 기술은 아니지만, 많이 활발하지 않은 Gemini 프로토콜 생태계에서 가장 괜찮은 선택지였습니다.
파이썬으로 CGI 스크립트를 작성하고, 느려터진 홈 서버에서 호스팅했습니다. 지금 바로 아래 URL을 Gemini 프로토콜 브라우저에 입력해서 제 블로그 글들을 볼 수 있습니다.
gemini://gmi.maengkkongi.site/cgi-bin/blog/
아니면 웹 프록시를 통해 웹 브라우저에서 바로 볼 수도 있습니다.
홈 서버 사양 문제로 인해 닫았습니다... 제가 티끌을 모으고 또 모아 비싼 서버를 사거나 클라우드 업체에서 빌릴 때까지 기다려주세요!
아래는 소스 코드입니다. 딸랑 50줄 짜리 파이썬 파일 한개고 이후로 활발히 업데이트할 것 같지는 않아서 그냥 Gist에 올렸습니다.
퀄리티가 그렇게 좋지는 않습니다. Ghost API로 받은 HTML 내용물을 외부 라이브러리로 마크다운으로 변환하고, 그 마크다운을 Gemini 프로토콜 마크업(Gemtext)로 변환한 후 가공 없이 그대로 보냅니다. 이뻐 보이게 다듬는 과정이 일체 없어서 깨지는 부분도 있고 안 나오는 부분도 있습니다...
이번 글은 정말 아무도 관심 없을 것 같은 개뻘짓 개발기였습니다. 이런 글도 읽어주셔서 감사합니다. 남은 연말도 잘 보내시길 바랍니다!
그리고 지금 호스팅 중인 Ghost 프록시와 캡슐은 별로 안정적이지 않아서 언제 죽을 지 모릅니다. 다운돼도 (저 포함) 아무도 모를 것 같지만 그래도 금방 복구 시키겠습니다.