Automation of package updates

I was working on packages in nemo-ux subgroup. I would like to ask if we can somehow automate process of updating of packages in packages repository. Currently, @spikerguy is doing that manually, but it doesn’t scale. I didn’t even found any wiki page how to get permission and publish packages manually.

In my opinion the best way would be automatic upload from gitlab-ci to unstable repository and manual updates to stable repository.

Currently, we have 8 packages which builds are not passing due to dependency problems.

The dependency issues are namely:

  • glacier-contacts-git needs contactsd-git
  • libdres-ohm needs ohm
  • policy-settings-common needs libdres-ohm
  • ohm-rule-engine needs ohm, swi-prolog, libprolog
  • ohm-plugins-misc needs ohm, libdres-ohm
  • nemo-device-pinephone needs glacier-wayland-session
  • glacier-wayland-session needs lipstick-glacier-home-git
  • lipstick-glacier-home-git this one is tricky (see below)

lipstick-glacier-home-git

Whole log from CI is here.

The important part is:

==> Installing missing dependencies...
resolving dependencies...
looking for conflicting packages...
warning: removing 'nemo-qml-plugin-models' from target list because it conflicts with 'nemo-qml-plugin-models-git'
error: failed to prepare transaction (could not satisfy dependencies)
:: unable to satisfy dependency 'nemo-qml-plugin-models>=0.2.1' required by glacier-settings-git```

Previously, we packaged nemo-qml-plugin-models-git which had nemo-qml-plugin-models in provides and conflicts variable. After some changes, the dependency was set to >=0.2.1. It turned out, that the version comparison doens’t work for some reason with command sha in version (e.g. 0.2.1.r0.abcdef), then the -git suffix was removed from package name. It seems the nemo-qml-plugin-models-git stays in the repository and causing conflict with nemo-qml-plugin-models package.

I would like to see software updates automation also. E.g. Linux Mint has it with automated old kernel removal (two last versions will remain). I just created a CRON rule to restart at night PCs. In situations, where there is lack of IT managers, such automated updates are very useful. Certainly we can hack some scripts and run them from CRON, but GUI would be appreciated like in Linux Mint.

This is not what’s talked about in the OP.

This thread is about automatically uploading packages, built with our build CI, to the repository.

We will soon have the ability to do this. It just depends on Boxit2 to get production ready first.

sorry, will start new thread…

Oh great. I am looking forward for more details.