14 сентября 2023 г.

Один из способов синхронизации KeePass

У тех, кто еще только планирует пользоваться KeePass для хранения паролей, часто возникает вопрос: можно ли сделать, чтобы была синхронизация между различными устройствами. В общем, ответ «да».

25 августа 2023 г.

Sciter – фреймверк для создания десктопного GUI максимально бытро

После небольшого исследования на предмет того как быстро создавать GUI для десктопа на C++ на сегодняшний день, помимо давно зарекомендовавших себя решений, таких как Qt или wxWidgets, набрел на довольно интересный фреймверк Sciter. В его подходе интересно то, что виджеты создаются веб-технологиями (HTML, CSS, Javascript) и при этом есть возможность вызывать функции, написанные на C++, собранные в бинарнике. Размер же собранного дистрибутива меньше 10 мегабайт! А в распоряжении программиста остается почти вся функциональность WebView. Всяким Электронам такое не светит в принципе. Поэтому решил попробовать собрать.

13 августа 2023 г.

Пошаговая инструкция по подключению библиотеки Boost к Unreal Engine 4 в виде модуля

Следует оговориться, что это лишь один из вариантов.

Например, ваш проект называется QuickStart, библиотека собрана компилятором vc под платформу win64.

  • Предварительно собрать либы для используемой архитектуры и компилятора
  • Создать папки QuickStart\Source\Boost\Private и QuickStart\Source\Boost\Public
  • Создать файл QuickStart\Source\Boost\Boost.Build.cs (листинг 1)
  • Разместить хедеры в QuickStart\Source\Boost\Public\boost
  • Разместить бинарники либ в QuickStart\Source\Boost\Private
  • В этой же папке создать файл BoostModule.cpp (листинг 2)
  • В QuickStart.uproject изменить код для ключа Modules (листинг 3)
  • В QuickStart\Source\QuickStart\QuickStart.Build.cs в PublicDependencyModuleNames добавить имя модуля Boost
  • В QuickStart\Source\QuickStart\QuickStart.Build.cs в конструктор обязательно добавить код (листинг 4)

14 апреля 2023 г.

Делегирование задачи деплоя другому проекту в Gitlab

Иногда требуется, чтобы разворачивание проекта в Gitlab осуществлял другой проект. Решение довольно тривиально. Для этого в проекте который делегирует в файле .gitlab-ci.yml пишем:

delegate-task:
  trigger:
    project: groups-path/project-slug

А в проекте которому делегируют в файле .gitlab-ci.yml добавляем проверку:

  rules:
    - if: $CI_PIPELINE_SOURCE == "pipeline"

21 марта 2023 г.

Как настроить CI в Gitlab

Всего лишь еще один способ.

Для версии Gitlab 14.6.2, которую можно посмотреть, по URL /help/ вашего экземпляра.

Сразу хочу оговориться, что рассматривается вариант с экземпляром, развернутым на своём сервере.