OpenMiInk/third_party/krita-deps-management
Hellings b8c8ff98e2 Hi
2026-10-16 09:05:56 -04:00
..
cmake Hi 2026-10-16 09:05:56 -04:00
ext_appimagetool Hi 2026-10-16 09:05:56 -04:00
ext_boost Hi 2026-10-16 09:05:56 -04:00
ext_brotli Hi 2026-10-16 09:05:56 -04:00
ext_dlfcn_win32 Hi 2026-10-16 09:05:56 -04:00
ext_drmingw Hi 2026-10-16 09:05:56 -04:00
ext_eigen3 Hi 2026-10-16 09:05:56 -04:00
ext_exiv2 Hi 2026-10-16 09:05:56 -04:00
ext_expat Hi 2026-10-16 09:05:56 -04:00
ext_extra_cmake_modules Hi 2026-10-16 09:05:56 -04:00
ext_fcitx-qt Hi 2026-10-16 09:05:56 -04:00
ext_ffmpeg Hi 2026-10-16 09:05:56 -04:00
ext_fftw3 Hi 2026-10-16 09:05:56 -04:00
ext_flac Hi 2026-10-16 09:05:56 -04:00
ext_fontconfig Hi 2026-10-16 09:05:56 -04:00
ext_freetype Hi 2026-10-16 09:05:56 -04:00
ext_fribidi Hi 2026-10-16 09:05:56 -04:00
ext_gettext Hi 2026-10-16 09:05:56 -04:00
ext_giflib Hi 2026-10-16 09:05:56 -04:00
ext_googleangle Hi 2026-10-16 09:05:56 -04:00
ext_gperf Hi 2026-10-16 09:05:56 -04:00
ext_gsl Hi 2026-10-16 09:05:56 -04:00
ext_highway Hi 2026-10-16 09:05:56 -04:00
ext_iconv Hi 2026-10-16 09:05:56 -04:00
ext_icoutils Hi 2026-10-16 09:05:56 -04:00
ext_icu Hi 2026-10-16 09:05:56 -04:00
ext_imath Hi 2026-10-16 09:05:56 -04:00
ext_immer Hi 2026-10-16 09:05:56 -04:00
ext_jpeg Hi 2026-10-16 09:05:56 -04:00
ext_jpegxl Hi 2026-10-16 09:05:56 -04:00
ext_json_c Hi 2026-10-16 09:05:56 -04:00
ext_karchive Hi 2026-10-16 09:05:56 -04:00
ext_kcompletion Hi 2026-10-16 09:05:56 -04:00
ext_kconfig Hi 2026-10-16 09:05:56 -04:00
ext_kcoreaddons Hi 2026-10-16 09:05:56 -04:00
ext_kcrash Hi 2026-10-16 09:05:56 -04:00
ext_kdcraw Hi 2026-10-16 09:05:56 -04:00
ext_kguiaddons Hi 2026-10-16 09:05:56 -04:00
ext_ki18n Hi 2026-10-16 09:05:56 -04:00
ext_kimageformats Hi 2026-10-16 09:05:56 -04:00
ext_kitemmodels Hi 2026-10-16 09:05:56 -04:00
ext_kitemviews Hi 2026-10-16 09:05:56 -04:00
ext_kwidgetsaddons Hi 2026-10-16 09:05:56 -04:00
ext_kwindowsystem Hi 2026-10-16 09:05:56 -04:00
ext_lager Hi 2026-10-16 09:05:56 -04:00
ext_lame Hi 2026-10-16 09:05:56 -04:00
ext_lcms2 Hi 2026-10-16 09:05:56 -04:00
ext_libaom Hi 2026-10-16 09:05:56 -04:00
ext_libde265 Hi 2026-10-16 09:05:56 -04:00
ext_libheif Hi 2026-10-16 09:05:56 -04:00
ext_libintl-lite Hi 2026-10-16 09:05:56 -04:00
ext_libogg Hi 2026-10-16 09:05:56 -04:00
ext_libraw Hi 2026-10-16 09:05:56 -04:00
ext_libtheora Hi 2026-10-16 09:05:56 -04:00
ext_libunwindstack-ndk Hi 2026-10-16 09:05:56 -04:00
ext_libvorbis Hi 2026-10-16 09:05:56 -04:00
ext_libx265 Hi 2026-10-16 09:05:56 -04:00
ext_libx265_10bit Hi 2026-10-16 09:05:56 -04:00
ext_libx265_12bit Hi 2026-10-16 09:05:56 -04:00
ext_linuxdeployqt Hi 2026-10-16 09:05:56 -04:00
ext_lzma Hi 2026-10-16 09:05:56 -04:00
ext_mlt Hi 2026-10-16 09:05:56 -04:00
ext_mypaint Hi 2026-10-16 09:05:56 -04:00
ext_nasm Hi 2026-10-16 09:05:56 -04:00
ext_ocio Hi 2026-10-16 09:05:56 -04:00
ext_openexr Hi 2026-10-16 09:05:56 -04:00
ext_openh264 Hi 2026-10-16 09:05:56 -04:00
ext_openjpeg Hi 2026-10-16 09:05:56 -04:00
ext_openssl Hi 2026-10-16 09:05:56 -04:00
ext_opus Hi 2026-10-16 09:05:56 -04:00
ext_patch Hi 2026-10-16 09:05:56 -04:00
ext_pkgconfig Hi 2026-10-16 09:05:56 -04:00
ext_png Hi 2026-10-16 09:05:56 -04:00
ext_poppler Hi 2026-10-16 09:05:56 -04:00
ext_pyqt-builder Hi 2026-10-16 09:05:56 -04:00
ext_pyqt5 Hi 2026-10-16 09:05:56 -04:00
ext_pyqt5-sip Hi 2026-10-16 09:05:56 -04:00
ext_python Hi 2026-10-16 09:05:56 -04:00
ext_python-modules Hi 2026-10-16 09:05:56 -04:00
ext_python-openvino Hi 2026-10-16 09:05:56 -04:00
ext_qt Hi 2026-10-16 09:05:56 -04:00
ext_quazip Hi 2026-10-16 09:05:56 -04:00
ext_sdl2 Hi 2026-10-16 09:05:56 -04:00
ext_seexpr Hi 2026-10-16 09:05:56 -04:00
ext_sip Hi 2026-10-16 09:05:56 -04:00
ext_strawberryperl Hi 2026-10-16 09:05:56 -04:00
ext_tiff Hi 2026-10-16 09:05:56 -04:00
ext_unibreak Hi 2026-10-16 09:05:56 -04:00
ext_vpl Hi 2026-10-16 09:05:56 -04:00
ext_vpx Hi 2026-10-16 09:05:56 -04:00
ext_webp Hi 2026-10-16 09:05:56 -04:00
ext_xsimd Hi 2026-10-16 09:05:56 -04:00
ext_zlib Hi 2026-10-16 09:05:56 -04:00
ext_zug Hi 2026-10-16 09:05:56 -04:00
latest Hi 2026-10-16 09:05:56 -04:00
pipelines Hi 2026-10-16 09:05:56 -04:00
repo-metadata Hi 2026-10-16 09:05:56 -04:00
tools Hi 2026-10-16 09:05:56 -04:00
.gitignore Hi 2026-10-16 09:05:56 -04:00
.gitlab-ci.yml Hi 2026-10-16 09:05:56 -04:00
global-config.yml Hi 2026-10-16 09:05:56 -04:00
how-to-update-compiler.md Hi 2026-10-16 09:05:56 -04:00
how-to-work-with-package-aliases.md Hi 2026-10-16 09:05:56 -04:00
notes-for-msys-users.md Hi 2026-10-16 09:05:56 -04:00
notes-on-python-on-windows.md Hi 2026-10-16 09:05:56 -04:00
policy-download-sources-blocklist.md Hi 2026-10-16 09:05:56 -04:00
README.md Hi 2026-10-16 09:05:56 -04:00
requirements-sip.txt Hi 2026-10-16 09:05:56 -04:00
requirements-sip.txt.in Hi 2026-10-16 09:05:56 -04:00
requirements.txt Hi 2026-10-16 09:05:56 -04:00
requirements.txt.in Hi 2026-10-16 09:05:56 -04:00

Krita dependencies management repository

CI job names structure

All publicly available CI jobs have names in the following format:

<target_packages>_<build_type>_<platform>

<target_packages> defines what packages are going to be built in this job. It may have the following values:

  • all --- the job builds all the packages available in the repository, including the debug and asan versions of the packages

  • custom --- the job builds only the packages passed via the web gui. To pass the space-separated list of packages, click on the job and set up the following job input:

    • input: KRITA_STAGE_DEP
    • value: base/qt base/mlt (space-separated list)
  • dirty --- the job rebuilds a subtree of "dirty" packages. Basically, it rebuilds the passed packages and all their dependencies. The list is passed via KRITA_STAGE_DEP input like for "custom" packages.

<build_type> defines what happens with the package after the build is done. It may have the following values:

  • publish --- after the build the packages are published to the repository; publishing is allowed in protected branches only, so if you try to build multiple packages in a non-protected branch, the job will most probably fail

  • local_cache --- after the build the packages are uploaded into the local cache. This method is suitable for non-protected branches and merge requests to test the changes in the build process

  • shared --- this is the legacy method of building multiple backages in the same environment without uploading them into the package repository. Currently, it is available for debugging purposes only

<platform> selects the platform for which we build the package

How to update/rebuild a dependency

Testing the changes

  1. Change the build recipes in ext_foo directory

  2. Create a branch/MR with the changes

  3. Open the auto-generate pipeline for the branch/MR

  4. Depending on the nature of your changes you may prefer to rebuild one specific package or a whole subtree of dependencies. To do that you need to open a corresponding job (open it by clicking on a name, not on the "play" button):

    • rebuild a single package: open custom_local_cache_<platform>

    • rebuild the sutree of deps: open dirty_local_cache_<platform>

    Note: you need to use "local_cache" type of job, since publishing is not available from non-protected branches.

  5. On the job's page set the job input:

    • input: KRITA_STAGE_DEP
    • value: base/foo base/bar (space-separated list)
  6. After the environment variable is set, run the job to test if it builds fine.

Publishing the packages

The packages can be published only from master and transition.now/* branches. After your MR is merged into master, you need to run dirty_publish_<platform> jobs for all related platforms to get the package published. The process of setting up KRITA_STAGE_DEP is the same as in the testing builds.