Updated Alpine/Samba plus WSDD - #469
Open
M0les wants to merge 8 commits into
Open
Conversation
added 6 commits
May 27, 2026 01:27
…_VARS to get config
This was referenced May 27, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This was borne out of a desire to use the dperson/samba Docker image with "modern" Windows clients (10/11).
This requires both an updated Samba version and also the ability to do Windows Service Discovery (WSD). While we wait to see if Samba integrates WSD, the wsdd script will fill the gap. Fortunately all this is available as Alpine packages, so I make a fork to pin to a specific known-working combination of all software versions (for deterministic builds).
Effective changes from the base version
--net host)-dflag to either disable wsdd (if given an optarg offalse), or to pass any optional parameters to the wsdd daemon otherwise.chmod +xon thesamba.shscript in the container to be able to start it from tini.wsddinsamba.shjust beforesmbd-Sparameter tosmbd, as this was deprecated in Samba v4.15 (Was: "log to stdout")Things to note:
wsddservice requires serving multicast data. As best I can determine, Linux containers can only work with multicast if they are directly connected to the host network (--net host). While there's lots of mentions of opening ports (-p nn:nn) and the actualsmbdservice will still work that way, the service won't be discoverable by Windows clients without thewsddservice working properly (i.e. the serving host won't show-up automatically in the File Explorer's "Network" view). I'm far from being a container networking expert and I only have an IPV4 local network to test with. So it's entirely possible someone might be able to figure-out a more restrictive way to map ports for multicast (but it isn't going to be me).smbdand one hallucinatedwsddparameter). However the result was also a reasonably large diff as it added a bunch of minor coding improvements, style changes and in-line documentation. I spent considerable effort "minimising" the diff and converting it to something that seemed to fit the original repo's coding style better. I believe I've achieved the bare minimum diff now. Ultimately I think there's only one or two lines left that I would attribute to the AI's original output (some variable and output handling). I don't really consider this "vibe coding" (because I understand everything it did and trimmed-out or reshaped it anyway), but you may have your own ideas about it, so you have all the information you need to make your own decision.