[00:54] <seanz> Greetings humans.
[00:54] <seanz> Can someone explain the difference between a source and a binary Debian package?
[00:54] <seanz> I get the literal difference, but I don't get what each is used for exactly.
[02:11] <achiang> seanz: a source package is used to create a binary package. a binary package is the thing you actually install with apt-get
[02:11] <achiang> seanz: a single source package can create multiple binary packages
[02:11] <Unit193> Unless he's talking about a binary blob package?
[02:11] <achiang> oh... maybe. not sure
[07:18] <highvoltage> achiang: basically a source package is what a packager works with. it's a directory with source code and binaries and a debian directory containing scripts and metadata. a binary package is a .deb file that contains the results of a built source package
[08:10] <dholbach> good morning
[15:59] <achiang> highvoltage: yes, i was trying to explain that to whoever asked about the difference yesterday :)
[16:03] <highvoltage> achiang: cool
[16:13] <seanz> achiang: Thanks for the info. I'm trying to nail down what *exactly* I need to create. I'm packaging up a Java war file, essentially, but I want to "do it right" and probably build a source package and have that properly compiled to a binary package.
[16:13] <seanz> highvoltage: Thanks as well for your info.
[18:07] <seanz> So would you all recommend I build a source package, or compile my war file separately and skip straight to the binary package?
[18:08] <seanz> achiang, highvoltage: ^ ^ ^
[18:36] <highvoltage> seanz: if you build a package only containing a war package, then you can't upload it to debian or ubuntu
[18:37] <highvoltage> seanz: you'll need a source package if you'd ever want to upload it to ubuntu or a PPA
[18:55] <seanz> highvoltage: That makes sense, but when I actually have both, and the changes file and the description file, I'm actually uploading them all at once, aren't I? Or am I solely uploading the source file?
[18:55] <seanz> Or source package.
[19:25] <highvoltage> seanz: you would upload the source package
[19:26] <seanz> highvoltage: So if I were also going to set up an apt server, would I want to set it up such that it automatically builds from source packages?
[19:26] <seanz> ...and let that generate the binary .deb upon upload?
[19:29] <highvoltage> seanz: depends what you want to do or what the point of that server is. if it's a build server, then you probably want that. if you just want an apt repository, it's fine having binary only or source only or both
[19:31] <seanz> highvoltage: Thanks for answering my questions. Technically, I could probably get away with having just an apt repository, but I'm thinking the most versatile way would be to have a build server.
[19:31] <seanz> I'm thinking that would keep the packaging process the most straightforward and unchanging.
[19:31] <highvoltage> seanz: easiest really is to upload to a PPA
[19:32] <highvoltage> https://help.launchpad.net/Packaging/PPA
[19:32] <seanz> highvoltage: Ok, checking the link.
[19:32] <highvoltage> might be better getting aquanted with that before investing in building your own build infrastructure
[19:32] <highvoltage> and the process of uploading there is very similar to uploading to debian/ubuntu, so you get a good start on how things work if you follow that
[19:32] <seanz> highvoltage: Good point, though the server we're building is for internal use only. I could potentially use a PPA for testing first.
[19:33] <highvoltage> seanz: *nod*
[19:42] <mfisch> after I make a divert in the preinst, I should be able to drop a file on top of where the original was, right?
[19:42] <mfisch> I'm either making a silly mistake or have forgotten how to do this
[19:43] <mfisch> for example: dpkg-divert --package foo --add --rename /usr/foo.orig /usr/foo and then in my install file I drop in a new /usr/foo
[19:43] <mfisch> (in my example I forgot the --divert arg but I have it in the preinst)