netatalk icon indicating copy to clipboard operation
netatalk copied to clipboard

Distribute webmin module code with netatalk proper

Open rdmark opened this issue 1 year ago • 2 comments

A webmin module (administrative webapp for netatalk) is currently maintained in a separate repo at https://github.com/Netatalk/netatalk-webmin/tree/main

This is to discuss potentially folding this codebase into netatalk proper and move towards a monorepo.

The benefits for doing this would be:

  • Coupling between netatalk release versions and webmin module release versions
  • Better chance that the module is kept up to date in the future
  • Enables the netatalk build system to build and install the module in tandem with netatalk proper (when webmin is detected)
  • Most potently, the build system can modify the module's config file on the fly to match the actual prefixes of binaries and config files

https://github.com/Netatalk/netatalk-webmin/blob/main/config

Drawbacks:

  • More code in the repo that has to be maintained...

rdmark avatar Apr 20 '24 08:04 rdmark

A few requirements:

  • Create an artifact that is a tarball with the webmin module dir structure (in parallel to the netatalk release tarball)
  • When webmin is detected, run the install_module.pl script to install said tarball
  • Support RH, Debian, and Solaris webmin install locations

Standard install locations:

  • Debian: /usr/share/webmin
  • RH: /usr/libexec/webmin
  • Solaris: /opt/webmin

rdmark avatar Apr 22 '24 10:04 rdmark

Alternative approach: Make webmin a submodule of the main repo, and have a custom script that modifies the config file and runs its build system.

rdmark avatar Apr 25 '24 02:04 rdmark

Discarding this for now. Lots of complexity for little gain.

rdmark avatar Jun 30 '24 10:06 rdmark

Achieved with https://github.com/Netatalk/netatalk/pull/1532

rdmark avatar Sep 24 '24 06:09 rdmark