Samba 4.x package support thread

@rzighel
The name in finder/share section is defined via webui /system/system the hostname field.

Try with and without those settings, for your [timemachine] share:

create mask = 0666
directory mask = 0777
force group = root
force user = root
guest only = yes

Try also without this module:
streams_xattr

@Andy2244
Could you please share samba 4.8 ipk? My router is WRT1900ACS. Cannot flash the firmware you compiled.

To help me test Timemachine or just to run samba4?
If you are just looking for samba4, its now in the master aka grab snapshots here: http://downloads.lede-project.org/snapshots/packages/

Thanks. I'll try to install the package.

Hello, I can't find this package when I look for available packages in the luci-app interface. The only package that shows up is the samba36-server. Is there any plan to merge samba4 in into the master package feed for WRT1900ACS?

Also, why is compiling new firmware needed for 4.8? Should we just need a new package that we can install native to 18.06?

It was merged into master 2 weeks ago, you probably run 18.06 not snapshot? https://downloads.openwrt.org/snapshots/packages/

Was just merged into master very close to the 18.06 release, so i wanted some feedback from master/snapshot users first. I made sure to have related packages available in 18.06, so it compiles against it and yes i will try get this backported to 18.06. So in theory the snapshot packages should also run on 18.06, but i did not specifically test this.

PS: I'm also currently working on a easy to use docker based package-builder, which should make it very easy for everyone to build/rebuild specific packages for 18.06/snapshot. So you can get the latest changes via custom feeds or use custom build options, without having to dig deep into the openwrt sdk framework.

You can also give this online image builder a shot:

1 Like

Yes correct, I am on 18.06. To get this package do I just need to add the custom feed?

I am more than able to test this especially if the package you build has Time Machine support since that's what I'll be mostly using it for. Let me know what feed I should add to test Time Machine on 18.06!

@Andy2244 Can you add samba hostplug support as samba36 did?

Is there a simple way to switch from your extra Repo to the integrated samba now?
wondering if your extra package will now bite the integrated samba4 setup

@yaravawiba I don't provide a feed with build packages for all targets. You can try use the snapshot builds for your target and manually install the package. Be aware that i have not yet enabled avahi support out of the box, so the snapshot versions wont announce samba to the mac-finder, yet the fruit (timemachine) module is available already. Maybe manual smb:/name will work?
If you give me your target/subtarget/version i can compile a samba4 package with avahi enabled for you, so you can try get timemachine running, by using the additional steps i posted a while ago.

@panda Sure, will add it to my list.

@johnnysl I think if you move to snapshots it should be automatic and i have no clue how to use the snapshot repos automatically for 18.06. You may be able to manually install the snapshots, they "should" be compatible with 18.06.

The idea is that i will try get this backported to 18.06 and i also try to get my package-builder ready.

I removed your feed just to be sure it doesn't clash and building a fresh build now. If i see any issues i'll report them here.

You are great, thanks. I can wait for once you get it backported to 18.06 and have the package-builder ready then too.

hmm...
This is a totally clean build from scratch, and it seems you forgot to add libcap as a dependency for samba4.
after i manually selected libcap in libraries, the compile worked.

find /home/johnnysl/wrt1900ac/build_dir/target-arm_cortex-a9+vfpv3_musl_eabi/samba-4.8.3/ipkg-arm                                                                                                    _cortex-a9_vfpv3/samba4-libs -name 'CVS' -o -name '.svn' -o -name '.#*' -o -name '*~'| xargs -r r                                                                                                    m -rf
Package samba4-libs is missing dependencies for the following libraries:
libcap.so.2
Makefile:395: recipe for target '/home/johnnysl/wrt1900ac/bin/packages/arm_cortex-a9_vfpv3/packag                                                                                                    es/samba4-libs_4.8.3-3_arm_cortex-a9_vfpv3.ipk' failed
make[3]: *** [/home/johnnysl/wrt1900ac/bin/packages/arm_cortex-a9_vfpv3/packages/samba4-libs_4.8.                                                                                                    3-3_arm_cortex-a9_vfpv3.ipk] Error 1
make[3]: Leaving directory '/home/johnnysl/wrt1900ac/feeds/packages/net/samba4'
time: package/feeds/packages/samba4/compile#1.00#1.95#5.02
package/Makefile:107: recipe for target 'package/feeds/packages/samba4/compile' failed
make[2]: *** [package/feeds/packages/samba4/compile] Error 2
make[2]: Leaving directory '/home/johnnysl/wrt1900ac'
package/Makefile:103: recipe for target '/home/johnnysl/wrt1900ac/staging_dir/target-arm_cortex-a                                                                                                    9+vfpv3_musl_eabi/stamp/.package_compile' failed
make[1]: *** [/home/johnnysl/wrt1900ac/staging_dir/target-arm_cortex-a9+vfpv3_musl_eabi/stamp/.pa                                                                                                    ckage_compile] Error 2

@johnnysl Thats strange the version worked for me locally for several targets and the buildbot was also able to create nearly all targets.
Can you post/link your distro and config seed/diff file, it seems samba still pulls in stuff from somewhere.
Can you verify that with a clean defconfig and just selecting your target + samba4 the build works or not?

1 Like

quick info for timemachine users:
Remove the /etc/avahi/services/samba.service file, i just found out that from samba 4.8+ on, this is handled internally by samba and no external files are needed anymore.

1 Like

oki i enabled AVAHI support by default so Linux/Mac clients can see the shares out of the box. In Windows only environments, disable the avahi build option or just stop the avahi-daemon service via luci, since we use the wsdd2-daemon on Windows.

This also allows Timemachine support out of the box, with a single option field under luci. Just enable this for your backup share and it "should" work, without the need to add any vfs modules or extra options.

PS: If you need different options, copy the per share options to the template and make manual changes, than delete your luci share entries. This way all is contained in your template file.

1 Like

I'm trying to download the build ipk's for the Snapshot SDK, but I notice the only ones its built for is mips_24kc, x86_64, and arm_coretex-a5_neon-vfpv4.

I have a wrt1900acs, any chance the ipk could be built for arm_cortex-a9_vfpv3?

Oh i see for some reason they are missing, let me check the faillogs.

@yaravawiba It seems on some targets samba4 pulls in libbsd, which should not be required. Will take some time to investigate and fix this, sorry.

Btw the https://downloads.openwrt.org/snapshots/packages/arm_cortex-a9/packages/ versions should also run on arm_cortex-a9_vfpv3.

PS: Maybe i can finish my "package builder", with it you can build your own packages from custom feeds automatically, while only needing to get Docker installed and will run on Linux/Windows 10. Still need to fix some bugs.

1 Like

@Andy2244: i'm building from snap now and switched from using an external netatalk and avahi solution to the build-in solution for TimeMachine. To circumvent some annoyances, i fully configured the Timemachine share in the smb.conf template, but otherwise it works just great.

@yaravawiba PR https://github.com/openwrt/packages/pull/6859 should solve this hopefully.

@johnnysl If PR https://github.com/openwrt/packages/pull/6772 gets merged, maybe you can report back if the luci/timemachine option also works out of the box, without needing a custom smb.conf template?

1 Like