Netatalk 2.3.0 available

rdmark

Moderator
Staff member
Oct 3, 2021
164
230
43
A new "feature" release of netatalk 2 is available: 2.3.0

And by "feature" I mean that I cut out a handful of long-obsoleted and bitrotted code. These are effectively breaking changes, which I wanted to signify with a full +0.1 version number bump.

For those of you who have been following along with my netatalk shenanigans, this release marks the point where netatalk 2 proper reaches parity with, and surpasses my now-abandoned "netatalk 2.x" fork.

Thanks to @NJRoadfan 's keen eyes, this version brings back AppleTalk standards compliant behavior of atalkd. If you had trouble previously with seeing other subnets from your netatalk clients, this version may fix that problem for you. See https://github.com/Netatalk/netatalk/issues/585 for more info.

Additionally, this version contains dozens of fixes that improves reliability, security, portability, and documentation.

The release notes can be found at: https://github.com/Netatalk/netatalk/releases/tag/netatalk-2-3-0

Hope you enjoy this release as much as I enjoyed making it. If you spot any suspected bugs, please let me know here or in the github project.
 

rdmark

Moderator
Staff member
Oct 3, 2021
164
230
43
If you want a graphical user interface for managing your netatalk 2 server, here's a nice and fresh version of the official webmin module. I spent some time today fixing bugs and improving the UX.

Download from: https://github.com/Netatalk/netatalk-webmin/releases/tag/netatalk2-1.1

See the README for instructions how to get started: https://github.com/Netatalk/netatalk-webmin/blob/branch-netatalk2/README.md

A screenshot for illustration.

Screenshot 2024-01-06 at 23.34.55.png
 
  • Like
Reactions: bakkus

rdmark

Moderator
Staff member
Oct 3, 2021
164
230
43
Netatalk v2.3.1 is available now. This is a bugfix and compatibility release.

Notably, this improves the buggy RMTP broadcast behavior that we attempted to fix with the atalkd "quirks" (-q) mode in 2.3.0.
Now atalkd should automatically detect if it needs to run in quirks mode, which should improve compatibility with AppleTalk networks that has multiple routers.

Additionally, the CUPS code in papd has seen major refactoring and modernization of CUPS API calls.
This should improve compatibility with printers, while making it future proof in anticipation of CUPS 3.0.

Huge thanks to @NJRoadfan for his hard work on both of the above!

See the release notes for more details and download links.
https://netatalk.io/2.3/ReleaseNotes2.3.1

You may also notice the new netatalk.io domain.
Thanks SourceForge for two decades of hosting. :)
 

rdmark

Moderator
Staff member
Oct 3, 2021
164
230
43
More Netatalk news! Building upon a POC by community member @eharmon I was able to put together a more or less fully functioning Docker setup for netatalk2. And now I'm looking for volunteers to try it out, and hopefully hear back if it works for you or not.

To get started, check out this git branch: https://github.com/Netatalk/netatalk/tree/rdmark-docker-v2

Instructions are in the root README.md

I have to say, for me and a handful of other people, it works remarkably well...
 

eric

Administrator
Staff member
Sep 2, 2021
941
1,542
93
MN
scsi.blue
Very quick and easy to get a netatalk setup on your NAS with this docker setup.

I can now copy a file from my MacBook Pro M3 to my Quadra 700 via Apple Share (through this) - very handy.
 
  • Like
Reactions: Patrick and rdmark

rdmark

Moderator
Staff member
Oct 3, 2021
164
230
43
I was thinking of setting up a netatalk2 server/host to support community network gaming. Has anyone done that? It looks like mac68k did at one time.
Is AppleTalk mandatory for your use case? AppleShare IP is much easier to serve over the internet, obviously.

@Byte Knight didn't you run a community AppleShare server at some point?
 

Eric's Edge

Tinkerer
Oct 31, 2021
122
87
28
Is AppleTalk mandatory for your use case? AppleShare IP is much easier to serve over the internet, obviously.

@Byte Knight didn't you run a community AppleShare server at some point?
I'm not sure. I'm using it for HyperCard event handling. I'm not familiar with AppleShare IP.
 

rdmark

Moderator
Staff member
Oct 3, 2021
164
230
43
I'm not sure. I'm using it for HyperCard event handling. I'm not familiar with AppleShare IP.
Out of curiosity: What exactly does the HyperCard event handling do with AFP, and how do you use it in your decks? I'd like to learn more about how Netatalk fits into this use case!

AppleShare IP is an AFP server using TCP/IP as the transport layer, as opposed to DDP (AppleTalk) with traditional AppleShare. The most obvious difference on the front end side is that you can connect to the AFP server with an IP address on the "afp://" protocol as you can see in Byte Knight's example above.
 
Last edited:

Eric's Edge

Tinkerer
Oct 31, 2021
122
87
28
Out of curiosity: What exactly does the HyperCard event handling do with AFP, and how do you use it in your decks? I'd like to learn more about how Netatalk fits into this use case!

AppleShare IP is an AFP server using TCP/IP as the transport layer, as opposed to DDP (AppleTalk) with traditional AppleShare. The most obvious different on the front end side is that you can connect to the AFP server with an IP address on the "afp://" protocol as you can see in Byte Knight's example above.
In HyperTalk, HyperCard’s programming language, they provide three essential commands that integrate AppleTalk.

answer program - asks the user to select an AppleTalk networked computer and program to communicate with. A string, the program address, representing the AppleTalk come, computer name, and program is returned. Usually another HyperCard program but could be something else.

send - which sends a HyperTalk expression to be evaluated by the target computer and program selected with answer program. Usually a message handler but any expression can be sent. The contents of “it” are returned.

request - which sends a HyperTalk function call to be evaluated by the target computer and program. The functions returned value is returned to the caller.

You can also listen to AppleTalk events to determine your own AppleTalk zone computer and program you are receiving requests on.

I have a proof of concept game on Macintosh Garden called Tic Tac For Two that demonstrates how this works.

 
Last edited:

eric

Administrator
Staff member
Sep 2, 2021
941
1,542
93
MN
scsi.blue
What would an AFP/netatalk server do in this case with the hypercard stacks? Isn't this type of communication peer to peer? (I donno, genuinely asking)
 

rdmark

Moderator
Staff member
Oct 3, 2021
164
230
43
A stable Netatalk 2.3.2 release has been tagged and released now:


All of the recent feedback and bug reports from the community should have been resolved now.

One last minute breaking change: I renamed the macOS launchd daemon to match the new https://netatalk.io website domain. The new name is:

Code:
io.netatalk.daemon

So if you installed the daemon with its earlier name via the earlier development code, you will have to disable and purge the previous one if you want to avoid it going stale in the future.

A huge thanks again everyone who used and provided feedback and code to the Netatalk project. You all are the reason I keep this project alive!