Some distros (such as Manjaro) require multiple packages to be installed before a working
Samba stack is present. This patch adjusts the CMake packaging and Samba auto-
installation feature to support passing a comma-separated list of packages to support
such distos.
Details
Details
- Reviewers
apol - Group Reviewers
Frameworks - Commits
- R432:0b2e51981044: Support installing multiple Samba packages
- Remove samba and try auto-installation again; it still works
- Invoke CMake with multiple packages (e.g. samba,rename) and try auto-installation again; both packages and their dependencies get installed
Diff Detail
Diff Detail
- Repository
- R432 File Sharing (Samba) integration
- Branch
- support-multiple-samba-packages (branched from master)
- Lint
No Linters Available - Unit
No Unit Test Coverage - Build Status
Buildable 12039 Build 12057: arc lint + arc unit
Comment Actions
Hope this helps ^^'
samba/filepropertiesplugin/sambausershareplugin.cpp | ||
---|---|---|
155 | This is a bit weird now, because you'll be getting N packages, and when they all finish installing they will all call "packageFinished" which I could expect to break in different ways. It would look something like: PackageKit::Transaction *transaction = PackageKit::Daemon::resolve(distroSambaPackages, PackageKit::Transaction::FilterArch); QSharedPointer<QStringList> pkgids(new QStringList); connect(transaction, &PackageKit::Transaction::package, [pkgids] (PackageKit::Transaction::Info info, const QString& packageId, const QString& summary) { pkgids.append(packageId); }); connect(t, &PackageKit::Transaction::finished, [pkgids] (PackageKit::Transaction::Exit exit) { if (exit != PackageKit::Transaction::ExitSuccess) return; auto t = PackageKit::Daemon::installPackage(*pkgids); //t.... }) |
Comment Actions
There are two executables required two run the samba integration properly:
- smbd
- net
But this is actually an implementation detail of KSambaShare from KIOCore. Wouldn't it be better to query the required packages from KSambaShare instead?
Comment Actions
Hmm, maybe. I don't see where that's actually specified in KSambaShare though. Can you help me find it?
samba/filepropertiesplugin/sambausershareplugin.cpp | ||
---|---|---|
43 | see here ^ net is not checked for at all, it just tries to execute it using QProcess::start("net", args) |