Александр Смирнов
Александр Смирнов
О себе
Свободный разработчик | Кострома, РФ.
Периодически решаю задачи, которые мне интересны.
Основные языки: C, Lua
Представлены проекты, реализованые как в свободное время, так и рабочие проекты, которые можно сделать публичными.
Активные разработки
-
redlamp - глубоко переработаный форк RedShift / GammaStep с поддержкой модульности и внешнего управления
Разработка была заморожена, но продолжена, поскольку адекватных универсальных решений управления гаммой под Linux не осталось, а глаза мне дороги
Из доработок можно отметить:
- Полностью переработана архитектура приложения. Осуществлён переход от монолитной структуры к модели плагинов.
- В связи с предыдущим пунктом, значительно улучщена кастомизируемость и настраиваемость приложения
- Предпочтительным режимом работы теперь определяется работа в режиме демона пользовательского пространства.
- Обеспечена drop-in совместимость c родительскими проектами
- Включены и отлажены, как плагины, все бэкенды проекта Gammastep, а также добавлены плагины для популярных DE (KDE в экспериментальном режиме)
- Добавлены плагины управления с использованием шины D-Bus или сокетов
- Реализована библиотека протокола на основе JSON, для упрощения реализации клиент-серверного обмена в режиме использования сокетов
- Добавлены достаточные возможности интеграции с пользовательской системой (systemd, XDG-порталы, Geoclue2).
- Реализована библиотека управления (клиент для плагинов управления), реализующая набор классов GObject c возможностью интроспекции.
- Реализовано собственное управляющее приложение на GTK3 и языке Vala с задействованием клиентской библиотеки.
-
webdav-js-patched - доработанный под требования предприятия форк заброшенного проекта webdav-js.
Из доработок можно отметить:
- Доработана работа с локализациями и декодированием
- Интегрирован патч динамического отображения загрузки
- Добавлен и актуализирован перевод на русский язык
- Добавлена возможность изменять корневой каталог DAV через атрибуты страницы (data-*)
- Добавлена кнопка расшаривния контента с возможностю подмены корневого каталога через атрибуты страницы (data-*)
- В панель навигации добавлены кнопки перехода в корневой каталог и обновления
- Добавлена возможность отслеживания работы сервера в режиме read-only и скрытия недоступной функциональости в данном режиме
- Добавлена колонка с временем последней модификации файла/каталога
- Внутренние ресурсы преобразованы в векторный формат, что даёт возможность качественого отображения на больших экранах
- Добавлено детектирование и отображения иконок для часто используемых форматов файлов
- Некоторое количество косметических исправлений и исправлений технических недостатков/ошибок (багов), обнаруженных в процессе эксплуатации (см. git log).
-
statusnotifier - доработанный форк проекта реализации протокола SNI (иконка системного лотка) для GObject.
Из доработок можно отметить:
- Добавлена сборка с использованием Meson
- Исправлены ошибки в скриптах Make. Обеспечен паритет с Meson.
- Добавлена функция создания тултипа с GdkPixbuf
- Исправлено формирование GIR и биндингов Vala
Заброшенные разработки
- libwsdd - клиент/сервер WS-Discovery (опционально LLMNR), реализованный в формате библиотеки.
- trapper - linux-демон, базирующийся на
libwsdd, обеспечивающий функционирование WS-Discovery/LLMNR на Linux (поддержка других ОС, теоретически может быть реализована, но не гарантирована) и предоставление информации о сети клиентским приложениям, посредством D-BUS.
Разработка данных проектов стартовала с целью обеспечения возможности полноценной работы Linux-клиентов в гетерогенных сетях с Windows (Vista+) ввиду прекращения поддержки и небезопасности использования SMB1/NetBIOS.
На данный момент проекты заброшены, т.к. в Windows пошло движение в сторону mDNS, локальная сеть стала работать более-менее адекватно, и острая потребность в настолько требовательном по времени разработки проекте уже не стоит.