10 лет с Колибри: как это было
Обзор в честь моего 10-летия участия в проекте создания операционной системы Kolibri.
Кем я только не работал и что только не делал в этом проекте. Именно знания, полученные в процессе работы над Колибри дали мне возможность кардинально изменить свою жизнь — найти работу мечты, новых друзей и получить невероятное количество фана!
Иконки
С самого начала и до победного конца пилю иконки для Колибри. Слева иконки до моего в прихода в проект, по середине моя первая редакция в 2007 году и в правом столбике текущий вариант из ночных сборок.
Занимался рекламой Колибри на других ресурсах.
Файловый менеджер Eolite
Моя первая и на данный момент самая крупная программа для Колибри. Начинали мы ее разрабытывать вместе с Veliant, потом к разработке присоединился Punk_Joker.
Memory Blocks
В игре нужно по памяти найти одинаковые пары пиктограмм, для уменьшения размера программы используются иконки рабочего стола. Будь дизайнером, поиграй со шрифтами с иконками! Идея и редизайн Memory Blocks: я. Программирование: Костя Veliant.
Dicty
Простой русско-английский и англо-русский словарик на 15 тысяч значений слов. Поиск происходит по мере набора.
Just Clicks
Переписанная на С-- ClickoMania. Нормальный дизайн, исправление багов, система уровней. Любимая убивалка времени в Колибри.
Appearance
Выбор оформления окон и обоев.
kolibri-os.narod.ru
Запуск моего сайта посвященного Колибри на бесплатном хостинге народ: http://kolibri-os.narod.ru. Сейчас не доступен.
WebView: текстовый браузер (Ex. HTMLv)
Моя самая известная и самая плохо написанная программа. В свое время Veliant кинул мне все свои проекты для Колибри. Среди них был один довольно интересный — «HTML Viewer in C--». Я адаптировал код программы под новую версию библиотеки и работа пошла.
Сам по себе браузер — это компонент TWB, который может быть встроен в другие программы на С--, например, он позже был встроен в почтовый клиент Liza.
Мои разработки в журнале CHIP
В мартовском номере номере журнала CHIP была опубликована статья о KolibriOS. Из всех скриншотов Колибри в интернете, они выбрали именно моего авторства. На нём версия Колибри 0.7.3.0, которая так официально и не вышла — собиралась она мною по типу ночной сборки. Обои, логотип, иконки, файловый менеджер — все моего авторства.
Встреча разработчиков
Встретился с разработчиком Колибри — Костей Veliant в Москве. С ним мы написали много хороших программ: Eolite, Memory Blocks, браузер. Именно он объяснил мне многие вещи в программировании, в частности о работе с памятью, регистрами и указателями. Мы чатились в аське дни напролет, забивая на универ. Эх, хорошее было время! Сейчас Костя работает в компании Dr.Web.
Flood-it!
Игра начинается с верхней левой клетки. Выберите цвет, нажав на один из квадратиков слева, и клетки окрасятся этим цветом — так вы присоедините соседние клетки той же окраски. Захватить поле нужно за ограниченное число ходов.
Выпуск KolibriN 8.X
Kolibri 0.8.0.0 — IMG образ, собираемый мной на основе ночных сборок, предшественник KolibriN. KolibriN 8.1 — это Upgrade Pack, который ставится поверх ночной сборки. KolibriN 8.2 — это ISO-дистрибутив. Загружается ночная сборка и поверх нее сразу накатывается KolibriN.
KolibriN8 в момент ее выхода порицали за упор на свистоперделки, не понимая, что она была нереальным прорывом для Колибри того времени, потому как ознаменовала переход от IMG сборок к полноценным ISO.
Но обо всем по порядку.
Когда ОС запускается, она полностью копирует все данные с образа kolibri.img в виртуальный диск /rd/1. Часть программ не влезает в 1.44 Мб и потому они лежат непосредственно на CD-диске. Собирая дистрибутив мы хотим добавить в меню ссылку на DOOM и прописать ассоциации с просмотрщиком zSea. Оба они лежат на CD-диске.
Загвоздка в том, что мы не можем этого сделать! Потому как CD-диск может быть /cd/1, /cd/2, /cd/3 и т.д. Гадать не вариант. На тот момент не было инструментов для решения данной проблемы.
Разрабатывая KolibriN8, я сделал инсталятор, который находил файлы на ISO и копировал их на виртуальный диск /tmp0/1.
Теперь их путь всегда был одинаков и можно было добавить ярлыки дополнительных программ на рабочий стол, в меню и главное — прописать ассоциации.
Второе, что было сделано важного: я собрал все программы для Колибри в одном месте, облазив форум, личные сайты разработчиков и далекие уголки интернета.
Список изменений KolibriN по сравнению с ночными сборками того времени:
- В поставку входит не публикованная до этого почтовый клиент Liza;
- Теперь любой может запустить и попробовать Grafx 2, до этого подобное было нетривиальной задачей из-за жесткой привязки к путям;
- Добавлены тень меню рабочего стола и полупрозрачность виджету уведомлений;
- В поставку входят игры, среди которых Doom, Loderunner, Pig, Jumpbump и эмуляторы игровых консолей NES, SNES, Gameboy;
- Эмуляторы DosBox и ZX Spectrum позволят запустить сотни старых приложений и игр;
- Поставка приложений: просмотрщик изображений zSea, программа для просмотра PDF, видеоплеер FPlay и многие другие программы.
- Все ассоциации прописаны, нескучные обои и скины, которые можно легко менять через контекстное меню рабочего стола;
Tmpdisk
Программа для управления виртуальными дисками, использует API драйвера tmpdisk.sys, написанного CleverMouse. Управление — командная строка и GUI.
Почтовый клиент Liza
Поддерживаться должны все почтовые ящики, работающие по протоколу POP без шифрования — это yandex.ru, i.ua, mail.ru… gmail.com не работает, т.к. использует шифрование.
Логин и пароль сохраняется после закрытия программы в текстовый файл. Можно задать свои настройки подключения.
После успешного логина, мы входим в почтовый ящик. Заголовки писем загружаются автоматически. Тело письма загружается при нажатии на него, процесс загрузки письма тоже отображается полосой прогресса. Размеры панелей отображающих список писем и само письмо можно менять, потянув мышкой за " = = https://habrastorage.org/r/w1560/getpro/habr/post_images/c06/23d/993/c0623d993b5702c04696421d47964043.png" alt="Liza mail" data-src="https://habrastorage.org/getpro/habr/post_images/c06/23d/993/c0623d993b5702c04696421d47964043.png"/>
Соцсети
Понимая необходимость проникать в соцсети, 28 января 2013 года я создал группу вконтакте «KolibriOS — официальная группа», успешно существующую и поныне.
Зачем эти соцсети? Сейчас там зарегистрировано и посещает их очень большое количество людей, глупо их игнорировать, если мы хотим нести KolibriOS в массы. Раньше такой задачи не стояло и Марио открыто об этом говорил. Я же хочу, чтобы система была известной, чтобы люди ей пользовались, а значит писали код и улучшали, т.к. количество всегда перерастает в качество. Также там можно настроить публикацию новостей. Ну и может быть определённая координация действий в будущем.
Объясняю почему нужно идти в массы; пост на форуме, 2013 год
В тот же день yogev_ezra создал группу в Фейсбуке, которая, к сожалению, уже давно заброшена.
Доклад о Колибри на конференции IT Club
Обзорный доклад о Колибри на конференции IT Club Global Logic в Николаеве.