10 лет с Колибри: как это было

в 10:12, , рубрики: kolibrin, kolibrios, open source, ассемблер, дизайн, иконки, интерфейс, Программирование

Обзор в честь моего 10-летия участия в проекте создания операционной системы Kolibri.

Кем я только не работал и что только не делал в этом проекте. Именно знания, полученные в процессе работы над Колибри дали мне возможность кардинально изменить свою жизнь — найти работу мечты, новых друзей и получить невероятное количество фана!

image


Итак, начнем.

Иконки

(2007..2017)
С самого начала и до победного конца пилю иконки для Колибри.
Слева иконки до моего в прихода в проект, по середине моя первая редакция в 2007 году и в правом столбике текущий вариант из ночных сборок.

Старенькая статья на эту тему «Иконки Колибри: забывая Менуэт»

KolibriOS icons evolution

PR

(2007)
Занимался рекламой Колибри на других ресурсах.

Файловый менеджер Eolite

(2008..2017)
Моя первая и на данный самая крупная программа для Колибри.
Начинали мы ее разрабытывать вместе с Veliant, потом к разработке присоединился
Punk_Joker.

Статья о разработке «Eolite. Мемуары дилетанта»

Eolite
Двухпанельный режим.
Eolite с двумя панелями

Memory Blocks

(2008)
В игре нужно по памяти найти одинаковые пары пиктограмм, для уменьшения размера программы используются иконки рабочего стола. Будь дизайнером, поиграй со шрифтами с иконками!
Идея и редизайн Memory Blocks: я. Программирование: Костя Veliant.
Memory blocks

Dicty

(2008)
Простой русско-английский и англо-русский словарик на 15 тысяч значений слов.
Поиск происходит по мере набора.
Dicty

Just Clicks

(2008..2013)
Переписанная на С-- ClickoMania. Нормальный дизайн, исправление багов, система уровней.
Любимая убивалка времени в Колибри.
Just clicks

Appearance

(2008)
Выбор оформления окон и обоев.
Skin Selector

kolibri-os.narod.ru

(2008)
Запуск моего сайта посвященного Колибри на бесплатном хостинге народ: http://kolibri-os.narod.ru. Сейчас не доступен.
Скриншот сайта kolibrios.narod.ru

WebView: текстовый браузер (Ex. HTMLv)

(2008..2017)
Моя самая известная и самая плохо написанная программа.
В свое время Veliant кинул мне все свои проекты для Колибри. Среди них был один довольно интересный — «HTML Viewer in C--». Я адаптировал код программы под новую версию библиотеки и работа пошла.
Сам по себе браузер — это компонент TWB, который может быть встроен в другие программы на С--, например, он позже был встроен в почтовый клиент Liza.

Также читайте статью «WebView или история о том, как в KolibriOS браузер писалa

Web View

Мои разработки в журнале CHIP

(2011)
В мартовском номере номере журнала CHIP была опубликована статья о KolibriOS.
Из всех скриншотов Колибри в интернете, они выбрали именно моего авторства. На нём версия Колибри 0.7.3.0, которая так официально и не вышла — собиралась она мною по типу ночной сборки.
Обои, логотип, иконки, файловый менеджер — все моего авторства.

Мои разработки в журнале CHIP

Встреча разработчиков

(2011)
Встретился с разработчиком Колибри — Костей Veliant в Москве.
С ним мы написали много хороших программ: Eolite, Memory Blocks, браузер. Именно он объяснил мне многие вещи в программировании, в частности о работе с памятью, регистрами и указателями. Мы чатились в аське дни напролет, забивая на универ. Эх, хорошее было время!
Сейчас Костя работает в компании Dr.Web.
Veliant

Flood-it!

(2011)
Игра начинается с верхней левой клетки. Выберите цвет, нажав на один из квадратиков слева, и клетки окрасятся этим цветом — так вы присоедините соседние клетки той же окраски. Захватить поле нужно за ограниченное число ходов.
Flood-it!

Выпуск KolibriN 8.X

(2012)
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 и многие другие программы.
  • Все ассоциации прописаны, нескучные обои и скины, которые можно легко менять через контекстное меню рабочего стола;

Kolibri N8
Kolibri N8

Tmpdisk

(2012..2016)
Программа для управления виртуальными дисками, использует API драйвера tmpdisk.sys, написанного CleverMouse.
Управление — командная строка и GUI.
Tmpdisk

Почтовый клиент Liza

(2012..2013)
Поддерживаться должны все почтовые ящики, работающие по протоколу POP без шифрования — это yandex.ru, i.ua, mail.ru… gmail.com не работает, т.к. использует шифрование.
Liza loginЛогин и пароль сохраняется после закрытия программы в текстовый файл.
Можно задать свои настройки подключения.
Liza settings
После успешного логина, мы входим в почтовый ящик. Заголовки писем загружаются автоматически. Тело письма загружается при нажатии на него, процесс загрузки письма тоже отображается полосой прогресса. Размеры панелей отображающих список писем и само письмо можно менять, потянув мышкой за " = = = ".
Liza mail

Соцсети

(2013..2017)
Понимая необходимость проникать в соцсети, 28 января 2013 года я создал группу вконтакте «KolibriOS — официальная группа», успешно существующую и поныне.

Зачем эти соцсети? Сейчас там зарегистрировано и посещает их очень большое количество людей, глупо было бы их игнорировать, если мы хотим нести KolibriOS в массы. Раньше такой задачи не стояло и Марио открыто об этом говорил. Я же хочу, чтобы система была известной, чтобы люди ей пользовались, а значит писали код и улучшали, т.к. количество всегда перерастает в качество. Также там можно настроить публикацию новостей. Ну и может быть определённая координация действий в будущем.
Объясняю почему нужно идти в массы; пост на форуме, 2013 год

В тот же день
yogev_ezra создал группу в Фейсбуке, которая, к сожалению, уже давно заброшена.

Доклад о Колибри на конференции IT Club

(2013)
Обзорный доклад о Колибри на конференции IT Club Global Logic в Николаеве.
Материалы доклада: речь и слайды
Отчет на сайте
Видео с конференции (плохое качество записи)
Я на презентации

Calendar

Редизайн календаря.
Calendar

Обновление оффсайта

(2013)
Официальный сайт Колибри уже какое-то время представлял из себя одну страницу без особого оформления.
kolibiros.org 2004-2011
Как всегда я решил обновить иконки.
kolibiros.org new icons 2011
Раз уж есть новые иконки, придется весь сайт обновить :)
На тот момент я не знал HTML/CSS/JS и я попросил сделать сайт Akyltist-а на основе бесплатного шаблона. Я ему помогал и позже правил баги, да так, что через пару месяцев устроился работать верстальщиком.
Новый сайт стал мультиязычным, получил галерею скриншотов, был добавлен баннер на главную страницу, который предполагалось менять в соответствии со значимыми событиями.

Выпуск KolibriN9

(2014)
Спустя полтора года разработки вышла новая версия KolibriN9!
KolibriN9 базируется на KolibriOS и предоставляет более красивое и дружественное для простого пользователя окружение — это не только красивые обои рабочего стола, но и гораздо большее количество ПО, поставляемого в комплекте.
KolibriN9
Из изменений, пришедших из KolibriOS:

  • подключение дополнительной директории /kolibrios/; (последствие создания KolibriN8)
  • поддержка USB (флешки, мышки, клавиатуры, хабы) и их «горячее» подключение;
  • поддержка на чтение ФС XFS и на чтение/запись ext2/3/4;
  • улучшено распределение времени в планировщике процессов;
  • добавлена нативная поддержка режима SATA IDE для жестких дисков и ATAPI устройств;
  • поддержка общесистемного буфера обмена;
  • включение в систему драйвера vidintel, включающего поддержку нативных разрешений на ноутбуках со встроенной видеокартой Intel;
  • обновление аудиодрайвера Intel HD Audio;
  • обновление драйверов для видеокарт Intel и ATI Radeon;
  • ускорение загрузки на некоторых конфигурациях.

А теперь об изменениях в KolibriN9 непосредственно:

  • переработан дизайн системы, дизайн стал гораздо красивее и приятнее;
  • улучшено удобство работы благодаря использованию Docky (док бар);
  • мгновенный запуск KolibriN за счёт поддержки подключения дополнительной директории /kolibrios/.

Написаны специально для KolibriN:

  • Game Center — игровой центр, из которого возможно запустить игры, поставляемые в составе KolibriN;
  • appearance — программа для быстрой и удобной смены системной темы и фона рабочего стола.

Более подробный обзор на оффсате.

Слияние KolibriN и KolibriOS

(2015)
Обиды, боль, холивары остались в прошлом и мы снова начали строить Колибри все вместе.
На данный момент почти все наработки из KolibriN перекочевали в основной дистрибутив.
Страница истории перевернулась.

Software widget

(2015..2016)
Универсальный виджет, с помощью которого созданы:
— System panel
— Game center
— App+ (KolibriOS Additional Software)
System panel

uPDF

(2015)
Завершение порта, расширение функциональности, исправление багов, серьезное улучшение интерфейса. Вся разработка велась в Линуксе в виртуальной машине.
uPDF KoliriOS

Pixie Player v1.X

(2015)

Статья о разработке «Музыка в KolibriOS: полный обзор и последние новинки»

Если коротко Pixie — это MP3 плеер, фронтенд для miniMP3. При открытии файла из папки, плеер запустит выбранную композицию и все MP3 из данной папки также будут добавлены в плейлист.
Окно может быть трёх режимов: обычное, схлопнутое в заголовок и компактное. Из тем на выбор пользователя доступно две: светлая и тёмная. Все настройки программы сохраняются после перезапуска. При запуске плеера без параметров, начнёт проигрываться последняя открытая папка.
Pixie 1.X

Когда вы перемещаете окно в компактном режиме, то перемещается не рамка, а само окно, впервые в Колибри!
Pixie player window drag

System panels configuration utility

(2015)
GUI для двух INI-файлов.
System panels configuration utility

TextEdit GUI update

(2015)
Обновлен GUI текстового редактора TextEdit.
TextEdit

Mouse testing and configuration utility

(2015..2016)
Название говорит само за себя. Собрал все в одном месте и причесал.
Mouse testing and configuration utility

TextReader

(2015..2016)
Текстовый ридер, поддерживает разные размеры шрифта и различные кодировки, использует ini-файл для сохранения настроек, поддерживает горячие клавиши и открывает файл в Tinypad.
TextReader

Большие шрифты

(2016)
Перевел многие программы на большие шрифты.

Подробности в статье «Шрифты в Колибри»

Clipboard Viewer

(2016)
Программа для просмотра содержимого буфера обмена. В отличии от Windows, где в буфере может хранится только один слот одновременно, в Колибри он многоуровневый. Данные о слотах представлены в виде таблицы, можно удалить последний слот или все, сделать аварийный анлок. Также доступен предпросмотр данных слота в виде текста и HEX.
Clipboard Viewer

KolibriOS — Issue Tracker

(2016)
http://bugs.kolibri-n.org
Адовая ненависть к Мантису достигла пика и я запилил простой и юзабельный багтрекер. Базируется на Tit.
Kolibri Bug Tracker

DrvInst

(2016)
Установщик драйверов, всю информацию берет из /kolibrios/drivers/drvinf.ini
drvinst

DrvInst

(2016)
Обновленное окно завершения работы, порт из KolibriN10 в KolibriOS.
Скриншот для сравнения: сверху старое, снизу новое.
End

Animage redesign

(2016)
Code by IgorA.
GUI by me.
Animage old
Animage new

Process manager

(2016)
Более простой и удобный менеджер процессов. Разработано было в рамках KolibriN10.
Менеджер процессов

Visual Text Comparer / Diff tool

(2016)
Порт http://c--sphinx.narod.ru/FILES/vc.zip
Visual Text Comparer / Diff tool

Pipet

(2017)
Пипетка для рабочего стола.
Пипетка

Продолжение следует…

Все исходные коды открыты, с ними может ознакомится любой желающий.
Статья вышла длинной, спасибо, что дочитали.

Автор: Leency

Источник

Поделиться

* - обязательные к заполнению поля