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

Move debian packaging stuff to a separte project #37

Closed
coder-hugo opened this issue Apr 10, 2015 · 10 comments
Closed

Move debian packaging stuff to a separte project #37

coder-hugo opened this issue Apr 10, 2015 · 10 comments

Comments

@coder-hugo
Copy link
Contributor

It's very uncommon to provide sources for a specific package manager within the main project as there are many different package managers out there. It's a common way to have a separate project for the packaging stuff.
If I remember correctly all of the documentations/tutorials I've seen about debian packaging say something similar. All of them describe how to build a debian package for a soures.tar.gz.

@masmu
Copy link
Owner

masmu commented Apr 10, 2015

I thought about this a while and i really don't see why you cannot keep the debian files there. Its just the one folder, so its pretty isolated. There are some projects which also keep their debian folder within the repository. Maybe, most people don't. But i assume that they have another build process and may have to keep build files for other distributions as well. Since i don't do that, i really have no benefit from that. In contrast to that i would have to change my whole build process.

@coder-hugo
Copy link
Contributor Author

You don't have to change the whole build process to reach this. The simplest solution for this would be:

  1. add debian to the .gitignore file
  2. move the content of the debian directory to a new repository (git filter-branch can be used to keep the history of the directory)
  3. git clone of the new repository in the current working directory

With this there will be still some leftovers in the Makefile which could be moved in a next step to a different location.

@masmu
Copy link
Owner

masmu commented Apr 14, 2015

My python application reads the debian/changelog for the version and stuff.
So its not that simple. The salt and docker guys also maintain their debian packaging in their repos.

I really appreciate your efforts, but i don't see a real benefit of that.

@coder-hugo
Copy link
Contributor Author

IMHO it's a bad design if the application code depends on some distribution specific code/stuff. But if this is the case then it's really not easy to solve this issue.
And btw. just because somebody else practices a bad design is no good reason for also practising a bad design 😉
So it's your decision whether you close this issue or leave it open to solve it eventually in the future.

@kapouer
Copy link

kapouer commented Dec 9, 2015

Hello,
talking about that, is anyone planning on distributing it in debian ?
I could review/upload it if needed. Seems nice. No device to test it with for now though.
About the debian-in-upstream problem: you can do that but it implies
author versions == debian versions, meaning it makes it harder for debian
maintainer(s) to patch and fix your software, especially if you stop developing
or releasing it.
It's usually simpler to just put the debian dir in another branch and rebase it on top of
master when you need to update it.

@muammar
Copy link

muammar commented Jan 7, 2016

Hi @masmu. First, thanks for this software, I have been using it with my chromecast audio recently and it works very well. I wanted to know if you have reconsidered what @kapouer and @coder-hugo have suggested regarding the debian/ directory you are providing. I am also interested in uploading this package to debian but this "issue" would hinder the maintenance. For instance, you wrote that your python application reads the version from debian/changelog which translates in a difficulty for modifying the changelog for debian revisions. From another point of view, the philosophy behind the debian/ directory is that it has to be separated from the pristine source code and one has to make all changes to the source from there. I can understand that you don't see any benefit, and in general it is not bad per se (this is your effort to provide a debian package, and that's great) but it would ease the work for official Debian maintainers.

Distributing your package in debian, as I am sure you may know, would allow to increase the number of users and many people would beneficiate from this.

Below I just let a reference in case you are interested to check it out.

Regards,

https://wiki.debian.org/DebianMentorsFaq#What.27s_wrong_with_upstream_shipping_a_debian.2F_directory.3F
https://wiki.debian.org/UpstreamGuide#Initial_Packaging

@masmu
Copy link
Owner

masmu commented Jan 7, 2016

Well, I really like it to just make a new release entry in debian/changelog and just hit make release.
But okay, if I remove the version reading stuff, move the debian folder to a new branch, remove it from master, the release would not contain the folder anymore, which should fix the problem with the debian maintainers.
When doing my own ppa releases i just need to merge back master to my debian branch, make a new release entry there, and then hit make release. Does this solve the issue or did i miss something?

@muammar
Copy link

muammar commented Jan 8, 2016

@masmu I think that that should solve the issue, and it won't disrupt too much your workflow to maintain your own ppa releases.

Thanks for considering this, and best regards.

@masmu
Copy link
Owner

masmu commented Mar 9, 2016

I moved the debian folder to a new branch, also called debian. So the new release 0.5.0 is the first one without it.

@masmu masmu closed this as completed Mar 9, 2016
@muammar
Copy link

muammar commented Mar 9, 2016

@masmu thanks for this!.

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

4 participants