-
Notifications
You must be signed in to change notification settings - Fork 31
adflib debian/ #59
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
Yes, AFAK, unadf was the only thing packaged so far (statically liked), standalone library was not there. Since there are couple of new tools, I put unadf with them to libadf-utils. So far, I was not involved directly with Debian dev, kind of "debbing" things for myself when I needed... So I do not know too much about the processes in Debian. From wiki, I understand I would need to make account on mentors.debian.net, and upload the package there? Or the source code? Then you take over, sign the final package etc. right? Also - couple of months ago, we were contacted by the maintainer of the unadf package about a new version for bookworm, but we did not have things ready then... |
dla mnie nie, you can put your debian src package (.dsc) anywhere online, and i'll the only important thing is that upstream orig.tar.gz is without debian/, and you add debian/ which gets placed somewhere else after not sure who contacted you because unadf package has no maintainer, well QA team. once i get to it i'll be glad to guide you. if you're on irc try to join irc.debian.org #debian-mentors |
So far what I do to build deb packages is (in case there is something to correct in the process...):
So from the 3 files that you need, the .dsc was missing (it was not configured to be archived in the workflow). I updated the workflow to include it and I rebuild it - so now the .debian.tar.gz, .orig.tar.gz and .dsc (extracted from artifacts) are added to the assets of the 0.8.0 release - so you can get it from there. So let me know if the files are fine and what we do next. |
normally people use with the source package available one can do
now we get the following
i'm a bit busy, but i'll try to edit/improve the answer |
Thanks for checking and the info. Yes, there are several warnings from lintian, they do not seem to be critical. Some probably probably will rather not be corrected ("package name doesn't match soname" will not happen as it was decided (discussion in #34) that soname will not relate to the library version... Unless we change it.... For now, I'd prefer to leave it as it is, unless it will be less troublesome to change it now than cleaning this up in the future. I tried exactly what you wrote (dget etc.), it works except failing on signing. So let me know if there is something to correct and, if not, how do we progress (for me no rush, too, I may also replay with some delays...) |
Would be nice to have a debian packaging with latest and better version of adflib 💪 |
the point is this software ships unadf, thus there is already http://packages.debian.org/unadf and that needs to be replaced.. |
As I showed above, I am willing to make changes required to make it available in Debian. So I did the checks I could and waited for further tips on what has to be done... But I am not pushing for anything myself, as I myself have limited time and understand it completely. Some points regarding
So, the question is, what exactly do we want to provide in debian. For me, the current packaging is optimal:
This is what, I normally see in Debian for similar cases. Eventually, since One more thing - there is some new code (#66) that repairs important things of |
Ok let's do step by step. We can skip creating a RFP/ITP bug for adding a new package, by using this new version building unadf binaries through debian new queue. To do so, the source package must be called unadf, the binary built packages can be called whatever, your suggestions above are good. Next, with a new version of this software. Can you check if one of these bugs can get fixed? After these things, if you believe the source package name is wrong, that can be changed. But it's always painful, so I would recommend to keep debian source package name unadf. drop debian/README.Debian and debian/README.source
drop debian/compat |
Concerning the bugs:
Also - trying to open such an invalid file directly results in an error:
Anyway, I will probably add a simple regtest for this as the lib should not ever crash on an invalid file...
So both of the bugs are fixed. (btw. note that both are about an ancient version 0.7.11... A lot of things were improved/fixed in As for the rest - I go back to this after merging #66, so that we figure out the setup before marking a new release. |
For this, I am not sure... I understand that the shortcut you propose can be simpler/faster - but wouldn't it be also inconsistent and troubling? unadf is one of the utilities (even if the most used one) based on adflib, not the opposite... It will look like adflib is rendered from unadf - while it is the opposite... Will this not create more trouble, if someone will want to make it "properly" later, ie. change the name of the source package for libadf? Also - versioning will be confusing as unadf has separated scheme (though currently Debian package has version 0.7.11a-5+deb1, so the version of the ADFlib, not of the utility:
(For this reason, and to keep this consistent with former packages, I think I will create a separated binary package just for Eventually, maybe can we rename the source package via patch (can files under (I am not arguing here what is better, this is just my curiosity and wondering what is eventually better, less-troubling in the future; having no experience with lifetime management of source packages in Debian, for sure I cannot judge this myself...)
Clarified above. We have to mark this somewhere as fixed, right? (changelog?) Lintian often complains about no bugs/issues mentioned...
If possible, I would like to keep possibility to build the library for older Debians (at least those still supported, like old stable/11), in case somebody needs it. Won't any of these changes break it? (I see that |
there is two main issues when you do not handle the unadf src/bin package already:
sorry i am not more detailed. but i would really go this way and can assist you with it. a src and or bin pkg rename is possible anytime, but cumbersome to handle. |
What worries me here is that, if I understand well, instead of 1, we will have several binaries with One more thing - I have checked status of unadf package and it is in the state "currently being adopted": https://www.debian.org/devel/wnpp/being_adopted I have made the changes you pointed out - but removing
Does it have to be build in some other way? (I use debuild so far). |
I did a short survey of debian stable packages which are tagged I got So precedent says there's no problem naming the package after the main utility or the library, and you can have extra binaries in the package. Personally, I think the package name You can have both, as far as I know. Option 1:
Option 2:
Option 3:
I would personally prefer option 1, if Debian rules allow it, or option 2 if they don't. Option 3 is a lot of extra work, as described in #59 (comment) but if the authorial intent is to forcibly rebrand everything, option 3 makes it clear. |
We are not discussing the name of the binary package of unadf, but the source package name, which is incorrectly set as As I wrote before that I was going to - I have separated the binary package with So this aligns with your option 1, what I hope is OK for you. Now for the last part of your message - unadf is a derivative utility using a small subset of functions of the ADFlib - thanks to which |
I've known Laurent for a long time, so I hope he doesn't mind, but I've been using unadf since it was released in 1999 (simultaneously with ADFLib, 2 years after he began the ADF FAQ) and it's an exceptionally useful tool, I've used regularly for more than 20 years now. I liked it enough to contribute a reimplementation to improve its ergonomics and security. I've never needed to write a program that used ADFLib directly. We have different perspectives. Another example: Debian packagers added my software, source package My example shows the source package Whether there needs to be a source package named We now get these options, ordered by effort:
The most expeditious route is option 1 or 2. If name of the source package is very important, I think you should go with option 3 or 4 and spend the effort upfront, rather than option 6. My preference is either option 2 or 4, due to my binary package name preferences. |
@kyz this is another such package, started with binary only later also shipped lib: https://sources.debian.org/src/ancient/2.1.0%2Bds-1/debian/changelog/ |
you're welcome t-w#3 |
Well, the result of neglecting the library is as I mentioned - the library is not officially packaged anywhere until now and we have a naming mess to clean-up. Yes, we do have different perspectives. I do not use nor particularly need unadf (though I might, I am happy it exists). I do use the library, I need it for fuseadf which replaces for me completely the functionality of unadf adding a lot more, giving me features of any other (basic) filesystem. Hence my will to improve the library to provide necessary features (but also to add more utilities to, for instance, examine or repair things).
That is a completely different project. The library libmspack is basically a set of independent algorithms, simply replacable by selected single static source files. ADFlib is a library entirely dedicated for a certain purpose, and is functional only as a whole. The fact that you treat and ship those things independently - good. I have also added here an environment that allows to do easily whatever users want and I try to build artifacts that can be immediately used, for instance, on Windows, where people might be less used for building things themselves. So I also want that people have the choice how they use provided pieces, whether you want to build utilities statically and use standalone or not. Contrary to your cabextract, I do not see any reason to provide If Debian wants only unadf as before - pity, but fine. They can build statically such package as before from what is already provided. Here will be provided deb packages with everything. In fact, I start considering this last thing as a temporal alternative - so that Debian only package static
I thought this I was clear enough - unadf goes as a separated binary package (#69), I explained why before. For the marketing statement, if packaging of unadf binary was changed to
If you are a user that sometimes rebuild packages on your own, then you have to deal with the source packages. So this is not something only for few developers, but for any a little bit more advanced user, who will get unadf project providing libadf and libadf-utils... I am using Debian for a long time (possibly longer that you) and I haven't seen such case.
The structure of packaging should reflect in some way the structure of the project from which it comes. AFAIK, unadf was never a separated, standalone piece of software. The only thing that keeps unadf as the source package is the fact that it was for some reason packaged in this, in my opinion invalid, way. While I understand certain complications coming from changing it, I do want to know if the situation will not be much worse if we ship So, while I was, eventually, willing to go for what you call here 2., now I am becoming more convinced that So for me point 4 would be the proper way to go. |
Sorry, I do not see how this relates here. A similar example to ADFlib is libqcow. |
Thanks, but, if you do not mind, first I want to clarify here the way to go. You haven't answered my questions about started adaptation process and implications of not changing the invalid source package name while shipping more packages using it. So let's start with that. |
So, I see that there is no will to discuss this further. Personally, I am against keeping However, I really do appreciate your input and help, and I do not want to dictate anything, but I do want to choose the best solution. I would like to leave this to Laurent to state his position on this matter - so @lclevy, is it OK for you that the source package name for distributing the library and the tools in Debian (and most likely all derivatives like Ubuntu) will be
and the directory with the source code named:
As I stated, I do not like this solution as it will be complicated and more time consuming to change later than doing it properly now - but if this is OK. for you, it is OK. for me, too, and we can go on this way. Another solution is that we postpone official releasing of the library for Debian (also, officially released, it will have to be more carefully maintained, addressing eventual issues on any platform etc.), package the things unofficially (like it was with 0.8.0), and either:
|
Absolutely I would like to get this sorted, it's just I'm very busy this week, will reply ASAP, sorry for letting you wait... are you not on IRC somewhere, would be much easier? |
It's perfectly fine to have the source package of adflib as it's original name, we just have to make sure to remove unadf first though then. And after it's removal, all bugs on it get closed, we forget them (usually you re-open them), then we upload new adflib package, and wait for it to travel through new queue. We lose debian/changelog of unadf, but I guess that's not so important. |
OK. Sure, no rush. (I thought you had enough of this discussion ;-) I am glad you agree on correcting the name, I know it is more to do now, but we have less mess later, thank you for this. Just let me know if you prefer to make a new PR yourself (to the tw/ADFlib/debian branch instead of t-w#3) or I should apply your changes myself (so that you do not have to spend more time on it...). |
I would not mind you doing it :) |
Also need to take care of this bug: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=661461 |
For these procedural things, I will need your guidance, as I have no experience with that... In the meantime, I am having look into misc Debian docs, but for sure I will need steps/directions what exactly has to be done. For dealing with bugs, this email API is used, right? ( https://www.debian.org/Bugs/server-control ) (for some things, when quick interaction is needed, maybe we can indeed meet on some IRC or whatever, but anyway I will probably need some time to look into things myself to learn and understand how to move around) |
basically yes. but there is also the bts cli, and this: https://github.com/alexmyczko/autoexec.bat/blob/master/deb2itp |
Yes . Please just explain me how to do this |
@alexmyczko, I will tag a new release, hopefully soon. But I want to make some clean-up in some parts of the library first, as when put in debian it has to be maintained in that version for a longer time. Concerning packaging - I had some second thoughts regarding the workflow when maintaining things and decided to move packaging specifically for debian to a separated repository, dedicated for that purpose. Debian packaging require a lot of dedicated things with its own constraints like versioning (which will be usually at least slightly different than the main project) and probably maintaining several versions (for different Debian releases etc.). I will keep "unofficial" deb packaging in ADFlib's repo (but move to I have prepared there some test version (in If this seems reasonable, I will add some config. for github actions to build automatically. If you have some suggestions how usually people organize this in optimal way or can point me to a project being a good example of this, I can change or improve it further. Let me know what you think. |
I do not know or have example, but do you have a package to review? |
friendly ping, is there anything i can help with? it would be great to have updated adflib in debian, i guess there's time until end of year, and then about 6 months freeze until debian 13... |
the package already exist but is called unadf. Tomasz do you want to maintain it for debian? I can sponsor your packaging…
The text was updated successfully, but these errors were encountered: