LINUX.ORG.RU

Gemini-клиент Lagrange 1.2

 , , lagrange, ,

Gemini-клиент Lagrange 1.2

11

5

Вышла новая версия красивого и полнофункционального Gemini-клиента — Lagrange, написанного на языке C с использованием библиотеки SDL.

Gemini — это новый протокол прикладного уровня, по своему предназначению являющийся простой альтернативой HTTP и усовершенствованной альтернативой Gopher, то есть проектом «посередине» между ними в плане сложности. Он появился как реакция на недостатки последних, в особенности HTTP. В основу его дизайна легли идеи уважения приватности пользователя и сознательного отказа от расширяемости в пользу консервативного сохранения спецификации в минимальном, но удовлетворяющем пользовательские потребности виде (сейчас она заморожена). Проект использует уже знакомые многим стандарты, вроде URI, MIME и TLS. Проект не использует HTML, CSS и JavaScript — для разметки файлов предлагается похожий на Markdown формат Gemtext, а запуск кода и применение стилей на стороне клиента не предусмотрены. Для интерактивного взаимодействия с сервером существует CGI и потоковая отправка сообщений клиенту с помощью долгоживущего TCP-соединения (вследствие чего, например, возможна реализация чата). Сайты принудительно используют шифрование с помощью TLS без CA — вместо него используется механизм TOFU, а для аутентификации пользователей используются пользовательские сертификаты.

Сообщество разрастается интересными для пользователей проектами, вроде поисковой системы GUS, агрегатора новостей CAPCOM, каталогом Gemini-капсул (так называются местные сайты) Medusae, техническими демо возможностей протокола, вроде анонимной текстовой доски, агрегатора ссылок и чата. Доступны прокси как для просмотра Geminispace с помощью HTTP [1] [2] [3], так и для просмотра HTTP с помощью Gemini, и то же самое для Gopher.

Протокол достаточно прост, чтобы любой желающий мог создать свой клиент и сервер — чего нельзя сказать о текущем состоянии современного WWW с тысячами страниц спецификаций. По этой причине уже существует разнообразие проектов энтузиастов и активная дискуссия в почтовой рассылке проекта.

Lagrange является одним из таких проектов — небольшим Gemini-клиентом с поддержкой аппаратного ускорения с помощью SDL и плавного листания страниц, отображения картинок на странице, вкладок, тем оформления, закладок, истории, пользовательских сертификатов, оглавлений, новостных лент.

В этом выпуске добавлена поддержка новостных Atom-лент, загрузки отдельных файлов со страницы без открытия новой вкладки, пиктограмм для закладок, поиска по капсулам с помощью выбранной системы в настройках, опция для автоматической перезагрузки страницы по интервалу и изменения в дизайне.

В разработке порт Lagrange на мобильные платформы! А до тех пор пользователи могут попробовать Ariane на Android, например.

>>> Подробности

★★★★★

Проверено: Shaman007 ()
Последнее исправление: commagray (всего исправлений: 6)

Ответ на: комментарий от commagray

Поддержка Gemini в WWW-браузерах скорее кощунство и очень толстый троллинг создателя протокола.

Именно поэтому я бы хотел, чтобы так случилось.

Тупой ненужный NIH прямиком из xkcd://standards.

intelfx ★★★★★
()
Ответ на: комментарий от wandrien

Возможно, @monk имеет в виду, что как CSS-стилем в WWW-браузере добиться одинакового отображения всех сайтов?

В Gemini этим занимается клиент и пользователь волен городить что душе пожелается из-за примитивности разметки.

commagray ★★★★★
() автор топика
Ответ на: комментарий от monk

чтобы в браузере оно стало таким же удобным как в Лагранже

Тебе рассказать про дидовскую табличную верстку на фреймах?

no-such-file ★★★★★
()
Ответ на: комментарий от commagray

Вроде еще опера начале в 2000-х имела настройку «отключить remote CSS ВЕЗДЕ» прямо в меню наверху. После этого применялись к сайтам только локальные стили.

wandrien ★★
()
Последнее исправление: wandrien (всего исправлений: 1)
Ответ на: комментарий от wandrien

После этого применялись к сайтам только локальные стили.

Попробуй это сделать на почти любом современном сайте. Получишь огромную стопку div’ов в левом верхнему углу.

monk ★★★★★
()
Ответ на: комментарий от wandrien

Вон как красиво по первой ссылке отформатировали.

Для сайтостроителя. А я хочу как в лагранже содержание справа и закладку на текущем месте сайта. И как я могу это сделать в Web?

monk ★★★★★
()
Ответ на: комментарий от commagray

Возможно, @monk имеет в виду, что как CSS-стилем в WWW-браузере добиться одинакового отображения всех сайтов?

Да.

monk ★★★★★
()
Ответ на: комментарий от monk

Попробуй это сделать на почти любом современном сайте. Получишь огромную стопку div’ов в левом верхнему углу.

А вас кто-то заставляет верстать «как на современном сайте»?

Спешите видеть, вёрстка сайта в реальном времени:

<html>

<head>
<title>Привет, мир!</title>
</head>

<body>

<h1>Привет мир!</h1>

<p>Привет мир! Это моя домашняя страница в нескучном формате «я у мамы программист»! При её создании ни один компилятор Си не был заставлен компилировать очередную ненужную ерунду!</p>

</body>
</html>

Как щас помню, на курсах в 8-м классе изучали и сдавали свои поделия. А потом я сайт на «Народе» верстал себе.

Слишком сложно?

wandrien ★★
()
Ответ на: комментарий от no-such-file

Тебе рассказать про дидовскую табличную верстку на фреймах?

А это вообще к чему? Всё равно вёрстка определяется сайтом.

monk ★★★★★
()
Ответ на: комментарий от Shaman007

Никто UA не выпиливает, его заменяют альтернативным механизмом (спецификацией дополнительных более строгих заголовков), потому что сам UA себя изжил и больше не выполняет своего предназначения.

anonymous
()
Ответ на: комментарий от wandrien

То есть протокол объединяет в одну кучу протокол обмена данными и формат разметки. И после этого HTTP — переусложнён??

Нет. gemini поддерживает mime и ты можешь отдавать любой mime-тип по этому протоколу. Если mime не указан, то подразумевается text/gemini, но если тебе нужно, отдавай markdown, html или PDF. Не забудь только написать клиент с поддержкой этих форматов документов.

eternal_sorrow ★★★★★
()
Последнее исправление: eternal_sorrow (всего исправлений: 1)
Ответ на: комментарий от wandrien

Я же говорю, NIH-синдром.

Ладно. Убедил. Можно было вместо своего гипертекстового протокола сделать очень порезанный HTML.

monk ★★★★★
()
Ответ на: комментарий от commagray

Я как на опеннете про что-нибудь под повермак спрошу, сразу прибегает некий пох. и начинает убеждать меня закопать машинку :D.

dv76 ★★★★
()
Ответ на: комментарий от monk

А gemini разве предназначен для того, чтобы открывать в себе любые современные сайты?

Вроде он задумался для того, чтобы пилить свои особенные статичесткие сайты. При это ничто не мешало пилить их на имеющемся http/html, а стилизовать пользовательскими стилями на клиенте. Но вместо этого создатель решили запилить отдельный протокол, чтобы что?

anonymous
()

Охренеть они конечно лицензию запрятали - BSD 2-Clause, можно закапывать.

zabbal ★★★★★
()
Ответ на: комментарий от commagray

Один из главных истеричек

Угу, по совместительству соавтор Wayland, который скатывает графический стек Linux туда же, куда тонны яваскрипта скатили веб.

Вот честное слово, занялся бы он Gemini лет 8 назад и не трогал бы иксы — польза была бы двойная. :(

hobbit ★★★★★
()
Ответ на: комментарий от monk

Для сайтостроителя. А я хочу как в лагранже содержание справа и закладку на текущем месте сайта. И как я могу это сделать в Web?

К любому markdown документы ты можешь применить помимо своего user-css, для его стилизации, маленький user-js написанный тобой лично, который будет тебе генерировать outline по этому самому документу. И вместо написаная клиентов и серверов под только что родившийся, но уже мертвый протокол, ты бы потратил буквально 15 минут времени.

Как уже выше озвучили - это банальный NIH.

anonymous
()
Ответ на: комментарий от monk

Можно было вместо своего гипертекстового протокола сделать очень порезанный HTM

В том-то и дело, что не нужно было бы ничего ДЕЛАТЬ. Можно было просто НЕ ИСПОЛЬЗОВАТЬ то, что сообщество gemini считает в современном вебе лишним.

Писать статические странички никто не мешает. Но у тебя есть ответ на вопрос, почему никто этим не занимается?

anonymous
()
Ответ на: комментарий от wandrien

Если бы молодые авторы «клиентов Gemini» потратили хотя бы 20% своего энтузиазма над работу на netsurf, мы бы, возможно, уже жили при чуть другом, чуть более вменяемом вебе.

Вот это, кстати, плюсану.

hobbit ★★★★★
()
Ответ на: комментарий от monk

А я хочу как в лагранже содержание справа и закладку на текущем месте сайта

А ты кстати можешь как тебе вздумается кастомизировать свой ланграж, без написания с нуля своего собственного клиента целиком, вместо скриптования имеющегося?

anonymous
()
Ответ на: комментарий от commagray

(которые Chrome даже пытается выпилить как явление)

Нет же!

While removing the User-Agent completely was deemed problematic, as many sites still rely on them, Chrome will no longer update the browser version and will only include a unified version of the OS data.


У меня обычно в UA какая-нибудь совместимая дичь написана...

Shadow ★★★★★
()

выглядит хорошо, даже под винду сборки есть. Отлично, я считаю. Но ЛОР на этом gemini не запилишь.

Lrrr ★★★★★
()
Ответ на: комментарий от hobbit

Wayland, который скатывает графический стек Linux туда же, куда тонны яваскрипта скатили веб.

Чёт проорал. В этой аналогии это скорее иксы мапятся на жаваскрипт.

LamerOk ★★★★★
()
Ответ на: комментарий от hobbit

Wayland, который скатывает графический стек Linux туда же, куда тонны яваскрипта скатили веб

напротив же, X11 это современный web, а waylаnd это gemini

eternal_sorrow ★★★★★
()

Какая-то терминальная стадия NIH-синдрома.
Согласен со всеми аргументами против современного веба, но это просто шляпа какая-то.

Казалось бы, бери и используй ограниченное подмножество HTML+CSS вкупе со строгим парсером. С первого же дня имеем поддержку со стороны множества прекрасных легковесных серверов и gui/tui клиентов.

Но нееет, нужно всё переломать и родить этот маргинальный стек технологий.

aidaho ★★★★★
()

Вроде и хорошо, ведь веб сейчас стал абсолютно отвратительным, раздутым и требовательным. Но! Ну вот для кого это?

не использует HTML, CSS и JavaScript

Ну и вот как объяснить человеку, который просто хочет в ютубе посидеть, новости почитать, что это лучше? Вы не поймите меня не так, ютуб или фейсбук — зло, но обычный человек этого ведь не понимает. 

Ладно, вы заменили HTML, не проблема, его возможности можно организовать в вашем языке разметки, хорошо. А что делать со стилями? Или они тоже лишние? Ну вот хочу я отступ увеличить, или сделать элемент плавающим, без маргинальщины с тонной анимаций, что тут не так? 

Или люди действительно думают, что кто-то кроме энтузиастов станет это использовать? Увы, нет, не станет. Люди критично мыслить не умеют, а вы хотите, чтобы они текст читали без оформления (сложнее чем абзац).

И самое обидное то, что этот протокол ведь действительно чинит веб, но автор не понимает, что для достижения цели надо идти на компромисс с остальными.

fernandos ★★★
()
Ответ на: комментарий от fernandos

Или люди действительно думают, что кто-то кроме энтузиастов станет это использовать? Увы, нет, не станет.

«Увы»? Нет, не увы. Всё правильно не станут.

И самое обидное то, что этот протокол ведь действительно чинит веб

Ничего он не чинит.

wandrien ★★
()
Ответ на: комментарий от eternal_sorrow

Ещё раз повторюсь, пока не будет поддержи этого вашего gemini в крупных браузерах (по крайней мере в firefox) - оно не нужно.

Напиши веб-прокси на Node.js с двадцатью зависимостями расширение для браузера.

Bagrov ★★★★★
()
Ответ на: комментарий от aidaho

Тут вообще посоветую Google AMP. Отображается в браузере, строгий парсер, и много хороших плюшек для юзверя.

Miguel ★★★★★
()
Ответ на: комментарий от fernandos

Ладно, вы заменили HTML, не проблема, его возможности можно организовать в вашем языке разметки, хорошо. А что делать со стилями? Или они тоже лишние? Ну вот хочу я отступ увеличить, или сделать элемент плавающим, без маргинальщины с тонной анимаций, что тут не так?

В Linux есть man и info. И они как-то ведь живут без стилей, отступов и прочих излишеств. И я не видел предложений переделать всю документацию на chm, например.

monk ★★★★★
()
Ответ на: комментарий от monk

В последний раз man я использовал лет 15 назад, когда не было возможности прочитать нормально оформленный текст мана в интернете.

anonymous
()
Ответ на: комментарий от fernandos

JavaScript

Нет, клиентские скрипты однозначно нужно выпиливать.

Они прямо противоречат идее легковесности, прямо ответственны за раздувание совеременного веба. Не говоря уже о том, что выполнение чужого кода никогда не будет стопроцентно безопасным.

Самые часто используемые паттерны применения JS внести в расширения протокола, и забыть о скриптах, как о страшном сне.

aidaho ★★★★★
()
Ответ на: комментарий от wandrien

Ничего он не чинит.

Чинит, или вы хотите сказать, что вам нравится ждать, пока загрузятся скрипты на страницы? Или вам нравится, что о вас собирают информацию? Может, вам нравится та орда фронтедеров, которые даже не пытаются оптимизировать свой код?

fernandos ★★★
()
Ответ на: комментарий от aidaho

Нет, клиентские скрипты однозначно нужно выпиливать.

Я с вами согласен, это была часть цитаты.

fernandos ★★★
()

Проект не использует HTML, CSS и JavaScript

Лет двадцать с лишним назад это было в анекдоте. Ну, про поставить рядом с полным стаканом пустой на случай, если не захочется пить.

thesis ★★★★★
()
Ответ на: комментарий от monk

В Linux есть man и info.

Кстати, хорошие форматы. info так вообще гипертекстовый.

Форматов подобного рода много, начиная от TeX с целым языком внутри или XML-ного DocBook и заканчивая простым AsciiDoc.

Но автор решил изобретать свой.

wandrien ★★
()
Ответ на: комментарий от monk

Маны гораздо проще, я же говорю про банальный float, padding.

fernandos ★★★
()
Ответ на: комментарий от commagray

Один из главных истеричек

Сначала народу говорят, что феминитивов нет, «врачиха» и «врачица» – просторечие. При этом, устоявшиеся «повариха» с «учительницей» никому не мешают. Народ смиряется, но говорит «наша врач». Освоившись и обвыкнувшись, народ начинает сооружать конструкции вроде таких «один из истеричек». Тезис, антитезис, синтез. Такая вот диалектика.

Bagrov ★★★★★
()
Ответ на: комментарий от fernandos

Чинит, или вы хотите сказать, что вам нравится ждать, пока загрузятся скрипты на страницы? Или вам нравится, что о вас собирают информацию? Может, вам нравится та орда фронтедеров, которые даже не пытаются оптимизировать свой код?

Критикуешь — предлагай.

Как вы себе без скриптов представляете работу админки любого крупного сайта? Пусть он сам хоть весь голым HTML отдаётся.

Лично я считаю, что если бы средствами XML описывалась (не тьюринг-полная) логика работы страницы как управляемого (со стороны сервера) дерева объектов — это было бы достаточно для многих типовых применений. Браузер бы выступал такими продвинутыми «иксами», которые хранят не растр, а логическую структуру и умеют ввод-вывод. А логика была на стороне сервера.

В то же время, и современный браузер с JS — это очень удобная среда для создания полезных приложений, и речь отнюдь не всегда идёт о монструозных фреймфорках и огромных порталах на их основе.

Любой онлайн-калькулятор чего угодно или построитель графиков и т.п. тому пример.

Вот я себе сделал простой калькулятор электрической цепи за 15 минут. На чем бы я его делал, если бы не было JS в браузере?

wandrien ★★
()
Ответ на: комментарий от Bagrov

Надо было нарочито обозначить, что весь из себя консервативный мужик Дрю порой ведёт себя как маленькая девочка.

Для этого и язык сломать не грех.

commagray ★★★★★
() автор топика
Ответ на: комментарий от wandrien

Как вы себе без скриптов представляете работу админки любого крупного сайта? Пусть он сам хоть весь голым HTML отдаётся.

POST на каждый чих с перезагрузкой всей страницы. Помню, пользовался. Особенно доставляет, когда запросы идентичны для вкл. и выкл.: что-то включил, страница не загрузилась или загрузилась криво. Перешел назад, снова включил – а оно выключено.

Bagrov ★★★★★
()
Ответ на: комментарий от wandrien

Как вы себе без скриптов представляете работу админки любого крупного сайта? Пусть он сам хоть весь голым HTML отдаётся.

Вот выше прекрасно предложили это вынести в расширения протокола.

браузер с JS — это очень удобная среда для создания полезных приложений

Проблема в том, что он поощряет создавать

монструозных фреймфорках и огромных порталах на их основе

На чем бы я его делал, если бы не было JS в браузере?

На листочке или в нормальном обычном калькуляторе. Вы же 2 на 2 не умножаете на калькуляторе.

fernandos ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.