... and doesn't require lots of maintenance!
this targets 5.18 but is kind of unfortunate because it needs a bunch of
new strings as no existing strings provide what is needed here.
the previous module was super broken in various ways.
in the interest of maintainability I've thrown everything out and replaced
it with 2 core features which require only modeling code on the KInfoCenter
end and provide actually (possibly) useful functionality to the design
personas of plasma.
there is now a single page which contains two table views:
a) Exports: this is a simple table of shares "exported" from the host. the
data for this comes from KSambaShare in KIOCore. this is the same API
used by dolphin to create new shares, so the data will be consistent
and the API needs maintaining anyway
b) Imports: simple table of shares "imported" (i.e. mounted) onto the host.
the data for this comes from solid
both are backed by models, with an eye towards a future port to qml (out of
scope since I want this fixed for 5.18)
all previous functionality was removed, in part because it was doing CLI
parsing, some of the parsing was broken, some of the CLI tools couldn't
even run as !root, log parsing could use incorrect paths on existing users,
log parsing has nothing to parse with samba defaults, log parsing didn't
implement per-host log file support (current default in samba), log parsing
didn't correctly implement per-user-config-log-file support.
in short: there was not a single feature that worked properly.