On 22.01.2016 20:58, Adam Majer wrote: > Hi Tomasz, > > I'm packaging Kea right now, and hopefully I will have it ready by end > of the week. But I do have some questions and it would be beneficial > if you could answer them. Hi Adam!
Great to hear that! I'll do my best to help. > 1. Currently Kea has one combined config file. Since I would like to > split the IPv4, Ipv6 and DDNS services into separate packages, is > there any potential problem in splitting the config file into three > distinct config files? That's not necessarily true. You could use one config file for all of them or three separate files if you want to. We provided a single config file, because it seems to be easier to maintain for users who installed from the source. But if you plan to split this into 3 packages, using 3 separate configs seems perfectly fine. We did develop keactrl as a simple generic script for init.d-like management that could work everywhere. It's perfectly fine to not use it at all and replace it with Debian specific scripts. On a related note, we're about to launch a kea-contrib repo on github. Let me know if there are any Debian specific files that you'd like us to host there. We'll put systemd scripts that were contributed by RedHat guys. I recently installed Debian 8 which seems to be using sysvinit. That's perfectly fine by me. I just wanted to mention that there are systemd scripts if they're of any use for you. > 2. Kea seem to be composed of a large number of dynamic > libraries. Is there any particular reason to ship these in separate > packages instead of one? Are there any libraries that are intended > for users and not just internal usage? libkea-dhcp++ seems to be the only library that could be useful as a standalone package. It provides generic DHCP operations, like open sockets, parse and build DHCP options and packets etc. It is currently used by DHCPv4 server, DHCPv6 server, dhcp-ddns daemon and perfdhcp (which is a performance tool). > Also, some of the libraries do not contain all the symbols that they > use. (you can use c++filt to change mangled names to readable ones) Thanks for this. I admit that I didn't know this tool. I will take a closer look. Due to family reasons, I won't be able to do this until Monday. I'm not sure how you want to proceed with this. Is this an issue that blocks the packaging process? Regardless if it does, we as ISC will do our best to fix the problem. I see that most all of the issues you listed below are in libkea-asiodns. This is a library we have inherited from (now dead) bind10 project. As a final thought on this, I was wondering what should we do with the changes. We'll commit them to our master branch and will release it eventually in the next 1.1.0 release, which is planned sometime during late spring/early summer. Waiting for the release is not a viable option. You could keep the changes in kea-1.0.0-debian.tar.gz. Our git repo is public on github, so maybe doing something like kea-1.0.0+20160125 would be useful? In any case, I don't have any preference here and will do whatever works best for you. Speaking of packages, there are two additional packages that could be possibly taken into consideration. We do have perfdhcp, which is a DHCPv4 and DHCPv6 server performance testing tool. It's implementation independent, so could be used without Kea servers. Also, there's Kea User's Guide, with is extensive and has around 100 pages of text. This is one of the Kea advantages over the old ISC DHCP - it's well documented. If you decide to package it - great. If not, it may be useful to point it out somewhere that it's available at kea website. Once you have initial packages that you think are ready for broader testing, let me know. I will ask good people on kea-dev and kea-users to test them. There's well over 100 people there. I'm sure many of them are running Debian and will be willing to help. Obviously, I'll test them thoroughly myself, too. Thanks again for doing this. As a happy Debian user since 1999, I'm very happy that I would be able to help make it a bit better :) Thanks, Tomek > dpkg-shlibdeps: warning: symbol _ZN3isc3dns6OpcodeC1Eh used by > debian/kea-common/usr/lib/x86_64-linux-gnu/libkea-asiodns.so.0.0.0 > found in none of the libraries > > dpkg-shlibdeps: warning: symbol > _ZN3isc3dns7Message11addQuestionERKNS0_8QuestionE used by > debian/kea-common/usr/lib/x86_64-linux-gnu/libkea-asiodns.so.0.0.0 > found in none of the libraries > > dpkg-shlibdeps: warning: symbol _ZN3isc3dns7Message6setQidEt used by > debian/kea-common/usr/lib/x86_64-linux-gnu/libkea-asiodns.so.0.0.0 > found in none of the libraries > > dpkg-shlibdeps: warning: symbol > _ZN3isc3dns7Message13setHeaderFlagENS1_10HeaderFlagEb used by > debian/kea-common/usr/lib/x86_64-linux-gnu/libkea-asiodns.so.0.0.0 > found in none of the libraries > > dpkg-shlibdeps: warning: symbol > _ZN3isc3dns15SectionIteratorIN5boost10shared_ptrINS0_8QuestionEEEED1Ev > used by > debian/kea-common/usr/lib/x86_64-linux-gnu/libkea-asiodns.so.0.0.0 > found in none of the libraries > > dpkg-shlibdeps: warning: symbol > _ZN3isc3dns7Message8setRcodeERKNS0_5RcodeE used by > debian/kea-common/usr/lib/x86_64-linux-gnu/libkea-asiodns.so.0.0.0 > found in none of the libraries > > dpkg-shlibdeps: warning: symbol > _ZN3isc3dns7Message9setOpcodeERKNS0_6OpcodeE used by > debian/kea-common/usr/lib/x86_64-linux-gnu/libkea-asiodns.so.0.0.0 > found in none of the libraries > > dpkg-shlibdeps: warning: symbol _ZNK3isc3dns7Message13beginQuestionEv > used by > debian/kea-common/usr/lib/x86_64-linux-gnu/libkea-asiodns.so.0.0.0 > found in none of the libraries > > dpkg-shlibdeps: warning: symbol _ZN3isc3dns7MessageC1ENS1_4ModeE used > by debian/kea-common/usr/lib/x86_64-linux-gnu/libkea-asiodns.so.0.0.0 > found in none of the libraries > > dpkg-shlibdeps: warning: symbol > _ZNK3isc3dns15SectionIteratorIN5boost10shared_ptrINS0_8QuestionEEEEdeEv > used by > debian/kea-common/usr/lib/x86_64-linux-gnu/libkea-asiodns.so.0.0.0 > found in none of the libraries > > dpkg-shlibdeps: warning: 9 other similar warnings have been skipped > (use -v to see them all) > >