replace samba module with data that works

Authored by sitter on Jan 30 2020, 2:44 PM.


replace samba module with data that works

... 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.

BUG: 411433
BUG: 374141
BUG: 325951
FIXED-IN: 5.18.1

Test Plan:


  • nothing when nothing is exported
  • changing exports via dolphin is immediately reflected in the kcm
  • export data is valid


  • nothing when nothing is mounted
  • (un)mounting a cifs updates the view immediately
  • data is valid

Reviewers: Localization, Plasma, VDG, davidedmundson

Reviewed By: Plasma, VDG, davidedmundson

Subscribers: jriddell, davidedmundson, ltoscano, yurchor, ngraham, alexde, plasma-devel

Tags: Plasma

Differential Revision:


sitterFeb 8 2020, 5:14 PM
Differential Revision
D27061: replace samba module with data that works
R102:0fb08bd6b5c3: Update version number for 5.18.0 GIT_SILENT