Modify

Opened 6 years ago

Closed 2 years ago

#10245 closed enhancement (moved_to_github)

Full TimeMachine Support for netatalk

Reported by: Faralla <faralla@…> Owned by: flyn
Priority: normal Milestone: Barrier Breaker 14.07
Component: packages Version: Trunk
Keywords: Cc:

Description

It would be of great benefit for Mac users, if netatalk would advertise it's volumes using Bonjour/Zeroconf.

Attachments (2)

netatalk-avahi.patch (5.2 KB) - added by Faralla <faralla@…> 6 years ago.
patch described in comment 1
netatalk-avahi.2.patch (7.4 KB) - added by Faralla <faralla@…> 6 years ago.
revised patch. No creates two packages with and without zeroconf support

Download all attachments as: .zip

Change History (15)

comment:1 Changed 6 years ago by Faralla <faralla@…>

Since Version 2.2, netatalk has zeroconf-support using libavahi-client. If enabled, it registers provided volumes automatically with an avahi daemon, which will announce them on the network.

jow and I enabled libavahi-client support in netatalk yesterday. See the attached patch. It is a patch for trunk, revision r28483, since in that revision, netatalk 2.2.1 was added (#10070).

Also in the patch I did some other changes:
1) /etc/init.d/afpd is now called /etc/init.d/netatalk . This is compliant to debian, at least. Currently /etc/init.d/afpd is not deleted when upgrading to my version. This still needs to be fixed
2) Removed bloatedness from afpd.conf
3) Changed AppleVolumes.default. Added default settings and example shares

Changed 6 years ago by Faralla <faralla@…>

patch described in comment 1

comment:2 Changed 6 years ago by Faralla <faralla@…>

To use the enhancements you need the additional package avahi-daemon-dbus. (Would it be wise, to depend/suggest it in netatalk-package?)

You need to start (in that order):
/etc/init.d/dbus , /etc/init.d/avahi-daemon , /etc/init.d/netatalk

comment:3 Changed 6 years ago by Joe Roback <openwrt-devel@…>

you don't need dbus for avahi to advertise afp volumes. Just the daemon and setting up an xml file in/etc/avahi/services.

comment:4 Changed 6 years ago by Faralla <faralla@…>

This patch does it out-of-the-box. No avahi config-file needed!

comment:5 Changed 6 years ago by Joe Roback <openwrt-devel@…>

yea, but it makes netatalk binary larger, and if you have avahi to advertise other servies besides afp, like ssh, sftp, samba, etc, the result is smaller disk usage overall, since only netatalk has built in zeroconf support.

comment:6 Changed 6 years ago by Faralla <faralla@…>

Since these users most likely use extroot, they don't care much about binary size. Besides, I think the increase is negligible.
Regarding process memory, on my system, dbus currently takes about 1,5MB VSZ.

Most users want to set up a server for TimeMachine without much thinking.

With the patch, all the user needs to do is to edit one intuitive line in AppleVolumes.default. Instead of googling up the cryptic avahi-config.

comment:7 Changed 6 years ago by Joe Roback <openwrt-devel@…>

you don't need dbus, so i don't know what you are talking about. try reading my previous post. I use netatalk, and time machine, and avahi, and I don't use extroot, and only have 8mb of flash.

I would agree that not having to setup an xml is easier, but its not that cryptic and there are like 100+ websites for doing this exact thing, step-by-step... I mean if you are putting OpenWRT on your router, you are capable of copy-and-pasting an xml file... and AppleVolumes.default is no easier or harder than avahi's xml config. I am sorry.

comment:8 Changed 6 years ago by Faralla <faralla@…>

I know you don't need dbus for setting up _with_ a config file. But far as I understand, you need it for enabled zeroconf-suport in netatalk. Or is there a libavahi-client without dbus?

But I guess, you will still agree, that a config file for avahi like

<?xml version="1.0" standalone='no'?><!--*-nxml-*-->
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
<service-group>
<name replace-wildcards="yes">%h</name>

<service>

<type>_afpovertcp._tcp</type>
<port>548</port>

</service>

<service>

<type>_device-info._tcp</type>
<port>0</port>
<txt-record>model=Xserve</txt-record>

</service>

<service>

<type>_adisk._tcp</type>
<port>9</port>
<txt-record>sys=waMA=«MAC Address»,adVF=0x100</txt-record>
<txt-record>dk0=adVF=0x83,adVN=Time Machine</txt-record>

</service>
</service-group>

is more complicated than

/mnt/timemachine "TimeMachine" options:tm,searchdb

which you still will need.

I still think, this is an enhancement for OpenWRT.
If flash size really is the matter, I would opt for the same way avahi goes: offering two netatalk packages. One with, one without zeroconf support.

comment:9 Changed 6 years ago by Joe Roback <openwrt-devel@…>

That sounds like the way to go, because I have no need for dbus on my system, and this is just pure bloat for me.. dbus + zeroconf is just duplicating functionally I already have, and like I said, avahi advertises for more than just afpd.

Changed 6 years ago by Faralla <faralla@…>

revised patch. No creates two packages with and without zeroconf support

comment:10 Changed 6 years ago by Faralla <faralla@…>

I added an updated patch.

this one contains two packages: One with zeroconf support (netatalk) and one without (netatalk-nozeroconf)

comment:11 Changed 6 years ago by swalker

  • Owner changed from developers to flyn
  • Status changed from new to assigned

comment:12 Changed 4 years ago by jow

  • Milestone changed from Attitude Adjustment 12.09 to Barrier Breaker 14.07

Milestone Attitude Adjustment 12.09 deleted

comment:13 Changed 2 years ago by florian

  • Resolution set to moved_to_github
  • Status changed from assigned to closed

Add Comment

Modify Ticket

Action
as closed .
The resolution will be deleted. Next status will be 'reopened'.
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.