Join GitHub today
GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.Sign up
Debian upgrade as source for 3-way merge #2869
@markus2330 Thursday we discussed about using a version controlled /etc to do the statistical part for the 3-way merge. Thinking about this I made a similar plan which I hope includes a selection of packages and thus config files that is representative (still have to check how much this really is) and reproducible.
This way we'd avoid having to install Elektra into the VM for example and could use the exact same version from the "outside" instead. I have spent some hours with the virtualization and mounting stuff so far.
At the moment I'm having some problems. Before investing a lot of time into solving them I wanted to clarify if this seems like a reasonable approach to you. One question that is still open is that those are only 2 versions and we would actually like to look at 3.
You can safely reduce to config files in /etc.
From the perspective of Elektra's goals, the design of a case study where Elektra is actually used to upgrade all files in a system is much more interesting. (Compared to a system where Elektra is not used.) Maybe you can realize this at least for LCDproc.
Note that we have several docker images (scripts/docker) and it should be easy to install Elektra there.
To get the third, you need to make permutations in the config files:
For the statistics, you can "simulate" the upgrade, by extracting the files, running Elektra merges outside of the container, and count the prevented merge conflicts.
For the "permutations" of the config files, it would be best if you can collect real config files of LCDproc by asking people to submit their config files either in a repo or to send them to you by email. Can you prepare a repo (with a README.md) and a message to be send to the LCDproc mailing list?
As already said, I can also send you config files with merge conflicts. I'll do the buster upgrades on my machines soon.
You mean similar to this https://www.libelektra.org/tutorials/merge-configuration-files but with LCDproc instead of samba?
As we have talked about virtual machines for the statistic: Does this mean that Docker images are good enough for the statistical part as well? I've just built one for the first time and still have to see how this all works exactly.
So this would be an additional goal for my thesis? We apparently had a similar idea for the statistical part
and I did not think about more so far because this looked like the relevant part for my research question.
Both done. https://github.com/Chemin1/config-files
I'd really appreciate that. We could handle this with the new repository too.
Yes, similar. LCDproc does not use ucf, so it would need a standalone script. As starter, you could also reproduce if that what is described in that tutorial actual works.
Of course docker is also fine.
It is actual not a new goal but two sides of the same coin:
In gernal, to have a case study is always a big plus for a thesis. The case study, however, can be limited to LCDproc. For the statistics it would be good to also have other config files (and not only LCDproc).
It does not show that what you have done is practically usable.
Thank you, I added some comments. Then please create https://github.com/ElektraInitiative/lcdproc-config-files with the content. And write that PRs are needed.
Then you should give some basic structure so that it is clear where to add the files. So that your evaluation is sound, you should separate LCDproc config files that were modified based on a Stretch config file and LCDproc config files that origin from other sources.