[Pkg-netatalk-devel] Packaging netatalk2

Daniel Markstedt markstedt at gmail.com
Sat Aug 19 07:32:16 BST 2023


Jonas,

It has been done! You can now generate "netatalk2_2.2.10-1_amd64.deb"
with debuild.
Review of my work would be greatly appreciated.
I'm sure I made terrible mistakes somewhere. :)

> - Bump compat level to 10
Now at level 13

> - Port over any other incremental improvements to debian files from
the debian/latest branch
It was a labor intensive process, but everything relevant has been
ported over now I think.
Made a version of the afpd smoke test as well.

> - Figure out why deb-systemd-helper throws errors for afpd.service and
cnid.service (both work afterwards)
This seems to be isolated to Bullseye. Works flawlessly on Bookworm.

> - See if we can link with WolfSSL as a drop in replacement for OpenSSL
Added a TODO item for this.
For the time being, I added a patch that disables DHX since it's very
broken when using OpenSSL 3.0, plus a paragraph in README.Debian on
how to work around it.

> - Change package name to "netatalk2" and make it conflict with "netatalk"
> --> I have a 90% working solution for the latter, but have one bug
> with the pam.d configuration override
In the end I concluded that netatalk.pam isn't needed anymore.
In fact, it overrides an upstream fix for noninteractive auth sessions.
I removed it from both branches.

Through the process lintian found a bunch of minor improvement areas
that I'll get fixed upstream.
Apart from that, with your blessing I'll proceed with the wnpp petition.

Cheers,
Daniel

On Thu, Aug 17, 2023 at 1:01 PM Daniel Markstedt <markstedt at gmail.com> wrote:
>
> A quick update on this effort:
>
> I found the sources for 2.2.6-3 in the Salsa repo:
> https://salsa.debian.org/netatalk-team/netatalk/-/tree/debian/2.2.6-3/debian/patches?ref_type=tags
>
> So I went ahead and created new branch "debian/old" off of this and
> started bringing it up to date:
> https://salsa.debian.org/netatalk-team/netatalk/-/tree/debian/old
>
> Now I have something that is using the very latest 2.2.10 release sources.
> It generates a seemingly fully working deb on Bullseye! More testing
> needed though.
> See the changelog for all of the incremental improvements I made along the way.
> It was a lot of learning and labor to get to this point, but I'm very
> happy with how it turned out.
>
> TODOs:
> - Bump compat level to 10
> - Port over any other incremental improvements to debian files from
> the debian/latest branch
> - Figure out why deb-systemd-helper throws errors for afpd.service and
> cnid.service (both work afterwards)
> - See if we can link with WolfSSL as a drop in replacement for OpenSSL
> - Change package name to "netatalk2" and make it conflict with "netatalk"
> --> I have a 90% working solution for the latter, but have one bug
> with the pam.d configuration override
>
> Cheers!
>
> Daniel
>
> On Sat, Mar 4, 2023 at 9:37 AM Daniel Markstedt <markstedt at gmail.com> wrote:
> >
> > To recap a private thread with Jonas:
> >
> > I'm proposing introducing a netatalk2 package, based off of the recently released netatalk 2.2.8.
> > The argument for having a netatalk2 package on top of the existing netatalk (3) one, is that the former retains the entire AppleTalk (DDP) networking stack with associated daemons and tooling.
> > With the rise of retro computing, more and more people are trying to network their old Mac and Apple IIs.
> >
> > There are several downstream projects that rely on netatalk2, such as macipgw, A2SERVER, RetroNAS, MacIPpi, PiSCSI, etc.
> >
> > Additionally, Debian is the only Linux distro I know of that ships with AppleTalk kernel support out of the box, so all the scaffolding is already in place!
> >
> > I did see that a historical 2.2.6 package seems to have existed in Debian, so perhaps this can be used as a template?
> > The main changes from a packaging perspective between 2.2.6 and 2.2.8, that I can think of off the top of my head are:
> > - systemd configuration added
> > - DDP enabled by default
> >
> > For the former, I think we should use the new systemd unit configurations (--enable-systemd) rather than the traditional Debian init scripts (--enable-debian).
> > For the latter, this simplifies configuration a bit, since you don't have to pass --enable-ddp --enable-timelord --enable-a2boot anymore to get the whole AppleTalk suite.
> >
> > Speaking about systemd, I'd suggest pulling in this as a downstream patch. It's important for folks running netatalk on RPis, which is a pretty common usecase these days.
> > https://github.com/Netatalk/netatalk/pull/233
> >
> > Best,
> > Daniel



More information about the pkg-netatalk-devel mailing list