Hi Martin, On 13.02.21 18:21, Martin Winter wrote:
Hi all,
some days ago I got aware of the OpenBoard package, which is built in the openSUSE Education project. As my wife is a teacher, she was very happy that this was available for openSUSE Leap 15.2. I then wanted to switch from the latest release evrsion 1.5.4 to the current release candidate of 1.6.1. Additionally, I created a new tool to draw a coordinate system on the board. This is available in a fork on github at https://github.com/letsfindaway/OpenBoard.
To package this work, I did the following:
- I did an osc copypac to copy the Education:OpenBoard package to my home project at home:letsfindaway. - I updated the source with the zip archive downloaded from my project at github. - I updated one of the patches and removed two others, which have been upstreamed since 1.5.4.
This works well, but I have a few questions:
1. Is copypac the right way?
It depends.
Is copypac the right way to create an own package which is quite similar to an existing one? How close is the binding to the original package after copypack? Are they independent or will the copy inherit any modifications to the original?
After copypac, the package is independent and has no connection to the "upstream" package in the Education project. If you want to have it connected, then you would need to linkpac or branch it.
2. Best way to add own modifications
First I thought I could just use the source zip from the original OpenBoard repository and add my modifications as a patch. However as my work contains a new image file in png format, I did not find a good way to put this file in a patch. Are there any recommendations how to do this? What about multiple Source specifiers in the spec file? Would they be approriate? How are they handled?
I'll state the obvious first: why don't you just get your modification into the upstream package, so that you do not need a modified package in your home repo? ;-) Now back to your question: I'd use the original tarball, add your modification as patch and add the new image as Source2: to the package.
3. Version specification for such derived work
Currently I'm just using 1.6.1 as the version specifier, which does not indicate that the package contains additional work. What would be the best way to express this in a version number?
Personally, I'd probably rename the package to "OpenBoard-Martin" :-) OTOH if this is just a feature addition and if you expect to have it merged upstream soon, then just adding the patch without further rename is also fine. Have fun, -- Stefan Seyfried "For a successful technology, reality must take precedence over public relations, for nature cannot be fooled." -- Richard Feynman