Skip to content
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

debian package #474

Open
josch opened this issue Feb 4, 2019 · 7 comments
Open

debian package #474

josch opened this issue Feb 4, 2019 · 7 comments

Comments

@josch
Copy link

josch commented Feb 4, 2019

Hi,

I just opened the following Debian ITP https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=921345 and already have some proof-of-concept packaging done. I just wanted to announce here, that I plan to upload python-miio to Debian and maintain it there. As far as I can see nobody else packaged it yet for Debian or Ubuntu? This would avoid having to use virtualenv on Debian and derivatives.

Thanks!

cheers, josch

@rytilahti
Copy link
Owner

Hi Josch, that sounds great!

As I'm not seeing the dependencies on that wishlist, I'm not sure how many extra dependencies you need to package to make that happen, but if it helps, maybe there is some optimization we can do to simplify things (looking at #423 which is a no-brainer, but maybe others should also be checked). Please let me know if we can be of any help :-)

@josch
Copy link
Author

josch commented Feb 5, 2019

Disabling pretty_cron (for now) was indeed simple and the only other change I did was to move the import of android_backup into the main() function so that it would only be required if a .ab file is encountered. Everything else was already packaged.

@josch
Copy link
Author

josch commented Feb 5, 2019

I just uploaded the package to experimental and it's now waiting to have its copyright information reviewed in the NEW queue:

https://ftp-master.debian.org/new/python-miio_0.4.4-1.html

I split the python-miio source package into a miio-tools and python3-miio binary package.

There is still some trouble with the dependency on construct because python-miio fails to build with the version we currently have in Debian (2.8.16) and requires a newer version of construct (2.9.45). This in itself is no problem, because it was easy to update the Debian construct package from 2.8.16 to 2.9.45. The problem is, that there is another package which depends on construct and which fails to build from source with construct 2.9.45. I am unfamiliar with the construct library, so I reported the problem to construct upstream. If you know how to port ironic-inspector from construct 2.8.16 to 2.9.45 then this would speed up the inclusion of python-miio.

Lastly, here is the relevant part of the copyright file I wrote for python-miio:

Files: *
Copyright: 2017-2019 Teemu Rytilahti <tpr@iki.fi>
           2017-2019 Sebastian Muszynski <basti@linkt.de>
License: GPL-3

Files: miio/vacuum_mapparser.py
Copyright: Julius Vitkauskas <zadintuvas@gmail.com>
License: GPL-3

I only spotted miio/vacuum_mapparser.py during a more detailed review. Are there any other files that are not licensed under GPL3 with copyright by Teemu Rytilahti and Sebastian Muszynski and contributors?

@rytilahti
Copy link
Owner

If you know how to port ironic-inspector from construct 2.8.16 to 2.9.45 then this would speed up the inclusion of python-miio.

Unfortunately I cannot help you with there. The construct undergo earlier a lot of breaking changes, so depending on how widely the library is used by ironic-inspector, porting it may be a bit more involved than in the case of this library.

Lastly, here is the relevant part of the copyright file I wrote for python-miio:

Looks like the package I've been uploading contains local files that are not supposed to be there, this concerns the miio/vacuum_mapparser.py which I had forgotten to add into a separate branch when I was working on it. The next release (which is likely to be released pretty soon, this week or the next) will not contain that file anymore.

Other than that I think you are on point with the copyrights.

I create a couple of PRs to make packaging easier. I'm also contemplating on dropping the pytz dependency or moving it as an optional one -- it is only used in a single place for a non-common operation.

@josch
Copy link
Author

josch commented Feb 5, 2019 via email

@josch
Copy link
Author

josch commented Feb 6, 2019

python-miio is no in Debian experimental: https://tracker.debian.org/pkg/python-miio

To be moved to unstable (and thus get a chance to be part of the next Debian release) I first need to solve the issue with construct.

I got one suggestion from the copyright review: If Sebastian Muszynski is indeed also copyright holder (as listed in the copyright snipped I posted above) then this information should also be reflected somewhere in the upstream (i.e. your) codebase and not only in Debian.

rytilahti added a commit that referenced this issue Feb 9, 2019
rytilahti added a commit that referenced this issue Feb 9, 2019
@rytilahti
Copy link
Owner

rytilahti commented Feb 9, 2019

Nice to hear it's progressing! Yes, we definitely should add a contributors / authors file, according to git shortlog -s there are in total commits from 29 unique names, most of which have contributed single patches. Most of the commits are from me (164) and @syssi (167), leaving 44 commits from other contributors.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants