KDE4 and KDE5 on the same system


#1

There has been versions that don’t coexist well. Is it possible to install plasma on a system with KDE4 in place?

I just read the FreeBSD KDE Ports and I’m thrilled to have it on BSD but I’ve not seen a discussion where I can glean the answer. It does say “…can be installed separately.” Which could be read to mean both ways. I’m guessing it means both will be installed separately, but not wanting to crash because of some semantics I figured I’d ask. (Of course snapshot and BE are helpful here.) :slight_smile:

Edit.

Decided to snapshot and install. Ran into the next hurdle, a clear description of sequence to install KDE5/Plasma. OK, thinking dependencies will get me through but kwayland is an alert as I’m on x11. No idea but it sounds fatal to me.

OK, maybe I should install on a separate drive and see how it goes so I can easily rebuild.

KDE Community Wiki for FreeBSD has an error on it, actually two. It say to run ‘pkg install x11/kde5’ and another error like that. Which is a futile thing to do with the slash there. Could be someone one more familiar know how to get around it but I certainly crashed here.

Attempted install show an error wanting v5.49 (I’m on unstable) but it only shows 5.43 packages, so I may need to downgrade to stable. Can I just rely on the pkg manager to handle that or should I simply re-install…?

It being late and quiet so I’ll just try on a new drive, unless I find I can down grade to stable, reliably. :slight_smile:


#2

I believe the ports tree that the packages for TrueOS 18.03 were built out before kde5 was added to the ports tree. So, you’ll have to update the ports tree and build things yourself (no pkg).

Alternatively, the Trident build that was posted over the weekend does have KDE5 packages. I installed it and it seemed to work OK, but it did a very cursory look.

Good luck!


#3

The short answer is no, KDE4 and KF5 cannot be installed into the same prefix; the latter is really intended to be a successor and replacement of the former.

That said, a typical KF5/Plasma5 desktop will still contain the KDE4 libraries and can run KDE4 applications as long as they don’t depend on anything that can only be installed in its KF5 incarnation. Evidently that includes but is probably not limited to the various Plasma components.

It is possible to install much of KF5 in its own prefix (I do that on my Linux KDE4/Plasma4 system) but I don’t think it would be easy to get a complete Plasma5 desktop to work that way; or you’d have to be real careful during the startup procedure that the dbus sees only the right things.

It is near impossible though to have KDE PIM v4 and PIM v5 on the same system. The whole Akonadi infrastructure has evolved but still registers the same things on the dbus, using the same identifiers - and the database format has changed too.


#4

Alright, interesting. I’ve seen hints to that effect from earlier but never bothered to go down that road as I felt I could not find good enough how to’s to venture there.

I’m also glad to hear someone else got it up and running. It looks like KF5 cannot be installed yet on v12. Over the w/e I tried to get it running by compiling but ran into version dependencies that mucked it up.

Could you please share your set up on how you got it running?


#5

First thing to do would be to contact the KDE FreeBSD guys with a request for support. They’re probably on a mailing list, maybe even a dedicated one, or else IRC. They’d want to know about errors on their pages because they’re clearly active.
AFAIK theirs is the only existing solution which should give you a full KF5/Plasma5 desktop, but probably not in addition to a Plasma4 desktop as per my previous post. Having the two installed in parallel is just not something that is of interest to the KDE people: they want users to move on.

Following my lead is also possible. I don’t want to discourage you but you’d be mostly on your own because I’ve been doing this on Linux until now … and it won’t give you a full Plasma5 desktop. I’ve been making some efforts lately to get rid of the (most) Linux specifics in my Portfiles, aiming to keep only “Mac vs. the rest”. The bigger challenge might be to get the MacPorts base to build and install. But once that works and assuming all required ports build out of the box you can follow the instructions at http:/github.com/RJVB/macstrop and github.com/RJVB/lnxports and then bootstrap using sudo port install kf5-kate.
That’s the theory at least. In practice I’ve been lazy and cutting corners by letting ports depend on host libraries instead on Linux (the rig I started this experiment on was really slow, and the current notebook not really fast either). So there are quite a few implicit dependencies on libraries that are available on Ubuntu (but not necessarily by default!) and you’d have to look at the port code (or version) for Mac to figure out what they are. Not proper, I know, but this was never really intended to be used by others. The Linux ports also use the host’s dbus, evidently, and that means that you have to figure out how to get at least the session dbus to find all your new dbus resources somewhere under that new prefix.
Oh, and then you may prefer to use the host’s Qt5 version yourself, to avoid having 2 copies on your system or simply because my Qt has quite a few patches. I have no idea if KDE5 would support to be installed in, say, /opt/local while Qt lives in /usr/local.


#6

Thanks for the info. Just to be clear, I have no interest in hanging on to KDE4, I have it because that’s the only version I could get running on TrueOS. I’m very excited to see KF5 is running and will switch once I have figured out what I need to do.
I’d be happy to compile it but I’m lost in all the different packages and simply have no clue where to start. No doubt there is some instructions somewhere but I’ve never seen it. It should be a full install. Installing from packages is obviously a lot easier and faster. I’m not eager to compile it all, I just will take whatever road I need (based on FreeBSD not Linux).


#7

There’s a script that will fetch, build and install all KF5 frameworks for you, but from there on I’m afraid you’re on your own. Maybe there’s a cross-platform packaging effort (Gentoo Prefix, pkgsrc) that already set things up - once you have the whole structure for Linux it shouldn’t be that hard to port it to *BSD.

There’s also a packaging manager maintained by a number of KDE devs, which comes with instructions how to set it up on FreeBSD: https://community.kde.org/Guidelines_and_HOWTOs/Build_from_source/FreeBSD . I don’t see (from a cursory glance) if this is designed to allow installing to a system-wide location too, but the devs are on IRC so getting support should be easy.


#8

As I said earlier, the Project Trident has an updated KF5 (as a metaport called kde5). If you install the beta into a boot environment, you can just run:

pkg install kde5

If you want to try and build things yourself from ports, it’s easier to update your ports tree and then run:

cd /usr/ports/x11/kde5`
make install

Keep in mind that if you do the ports tree, you basically can’t use package as there will be a very large difference between the tree it had in March 2018 and the one you pull down now.

You are at a tough crossroads. I would say trying out the Trident Beta in a boot environment may be the easiest choice if you want to do a sneak peak of it.


#9

To summarise, project T will give the choice to install a full KDE5/Plasma desktop environment?

If so, it’d probably be worth waiting for that if you don’t want to bother with building everything yourself (hours of labour) or installing unstable things (p.T. in its current state).


#10

@RJVB, Yes, project T should. I have installed it in the Beta, I’ve only done very rudimentary things, but it seemed to be working well. It’s probably best to wait until the final version is ready unless you want to help report bugs.


#11

I should remember trying to understand how boot environments work, when I’m turning thumbs. If they allow to move back and forth between a stable and unstable environment (and delete the old one once project T is production ready) then that could be useful (my workflow and usage patterns are such that I tend to bump into bugs and other issues no one ever thought of ;)).


#12

Thankfully, learning to boot environments with beadm is fairly straight forward.
There is also an excellent chapter in Michael W. Lucas’s Advanced ZFS Book. That really helped me understand what actually is happening during the whole thing.

Just keep in mind that each boot environment has its own sets of packages will probably help in the process.

Good luck!