On Thu, Mar 13, 2014 at 7:44 AM, John Layt wrote: > Some random/long thoughts on KDE on Mac, seeing as I'm a sometimes Qt > Mac developer and a KDE-on-Mac user, subscribed to the KDE Mac list, > was the guy who got the outdated website taken down as it was > confusing people, and got a bit burnt-out repeatedly trying to get Mac > people to engage with KDE and each other. Hi John, > > I use Kate extensively on Mac, and Dolphin when Finder is too > brain-dead. What frustrates me most is having to rebuild Macports all > the time, it takes forever and is not a good way to win over normal > users. It can also screw with my Qt test builds. We need a "normal" > install method on Mac for normal end-users and neither Macports or > Homebrew or Fink provide this. They're hacker tools still, even after > all these years, not end-user tools. Other projects like LibreOffice > have standalone Mac binary installers that they produce themselves (as > does Marble already) as Macports/etc are not a viable distribution > option for them. While the Windows Installer is not a great UX for > normal users, it's beats the options on Mac hands down, I wish we had > such an option on Mac. Taking on building our code on Mac for > ourselves can only improve the situation, even if just by freeing the > Macports/Homebrew/Fink guys up a little to work on integration and > binary distribution. > > Macports: they try hard to keep up with releases, and its the only > reliable semi-easy way to install KDE on Mac, but we keep breaking > things for them, and I'm not sure I've seen many efforts to push > patches upstream. They were not connected in to the KDE community at > all, in spite of my trying to encourage them in the distant past to > join the kde-mac list to coordinate things and ask us questions when > we break stuff, and for us to ask questions when we need to add Mac > support. Which is why it's so good to see Ian pushing for this, we > need people who know both communities to build that link. > > Homebrew looked promising when I looked for alternatives to Macports, > especially with prominent ex-KDE people running it, but the problem > there was no official support, you can't install KDE from the main > repo. Last time I tried I couldn't figure out how to use any of the > forks that did. Good news here is that there is now an effort to > unite all the forks and make an official repo (see > https://github.com/adymo/homebrew-kde/issues/11), with well-know KDE > peeps adymo and haraldf involved and currently pushing patches > upstream to fix Mac build issues. But nary a peep on the kde-mac > list, so others may not know what's going on. > > Fink: No idea on the current status, last time I tried years back > they were well out-of-date so I stuck with Macports. > > And there's the problem with KDE on Mac in a nutshell: three different > build technologies, designed for hackers, with little coordination > between them or us. So I beg you all: SUBSCRIBE TO THE KDE-MAC LIST > AND CO-ORDINATE THERE! COMMUNICATE! I want our Mac group to revive, > and if we work together to solve problems and maintain the upstream > KDE build in KDE with CI to keep them building then it's a lot less > work downstream! We need to build the same relationship with the Mac > builders as we have with the Linux disto packagers, we build and > maintain the code, they package and distribute. > > What to do at the KDE end? > > We have a wiki at http://community.kde.org/Mac that we need to keep > updated as things change, as that is where mac.kde.org redirects. We > also have the forum at http://forum.kde.org/viewforum.php?f=60, but > for devs please use the list at > https://mail.kde.org/mailman/listinfo/kde-mac. I can't emphasise > enough: if everyone who's doing stuff with KDE-on-Mac were to talk to > each other there, there would be a lot less work needed! > > Qt5/KF5 may improve things, but we still need to build infrastructure > to support Mac. > > We need CI Mac builds to test KF5 stuff and prevent Linuxisms and > build breakers from creeping in over time, e.g. to ensure the creation > of Mac Frameworks (a special type of library) works as you need to > follow strict include rules that Linux or Windows don't need. It's > part of our "KF5 everywhere Qt is" strategy. Advanced Mac platform > integration will also need CI builds to check they don't get broken by > Linux-focussed devs :-) In terms of the bare minimum requirements of the CI system itself (not taking into account anything being built) the following is needed. I'm assuming it is all available? - Java (either Oracle or IcedTea) - Python (with lxml support) - RSync - SSH - Git - Subversion - Bazaar The code to initiate a testing environment will probably also need customisation - Xvfb and Openbox are obviously not necessary or usable on Mac (if they're even available) > > We need remote gui or shell access to Macs to allow selected devs to > do test builds of their apps, or at least some way to trigger feature > branch builds in the CI from a dashboard. Failing CI after you've > done a blind untested Mac commit is just asking for trouble. Technically Jenkins itself is capable of offering such a capability - however our scripts would need expanding to handle this, and we'd probably need increased system capacity. > > You can run Mac in VM's on Mac, recent OSX versions grant a license to > do this without paying extra, so a single machine can support multiple > build VM's. I can dig up the details. I run Mac in a VM on my Linux > desktop, it is possible, but breaks the license and so is not an > option for KDE CI (I do have an old slow Macbook, so I paid for it and > feel semi-legal). > > We need to buy Mac hardware to run as part of the CI system (or hire > it if a data centre offers it), and perhaps also provide remote > access. Intevation did offer time on their build hardware at one > point but we failed to take them up on it. I have suggested a number > of times we run a crowd-funding for 2-4 Mac Mini's (EURO 800 each for i7 > w/ 4GB) which are perfect for the job and widely used for this > purpose. Homebrew was very successful doing a fundraiser to set up > their build farm, talk to Mike McQuiad about it. We can do it as > well, we don't ask our users for money often enough, they're more than > willing to pay a little for specific targets like this. Assuming that Linux build times are consistent with Mac times, then 2 systems should be sufficient if the following is correct. http://build.kde.org/label/LINBUILDER/load-statistics?type=min I would suggest a bare minimum of 8gb of RAM however - building Webkit in both Qt 4 and Qt 5 can be quite a memory hog. Please note that if we do purchase such systems then we need to find a place to host them - and someone to look after them should they need to be moved or require hardware maintenance (disk failures, etc). Ideally we would hire them from a DC which offers that. Note that once we have said systems available we'll need to drastically reconfigure the CI system to use "multi-configuration projects" instead of the current "free-style software projects" we currently use for most builds. Examples of this can be seen with the builds of Trojita, Calligra (master) and KWindowSystem (KF5). > > Kolab and other companies may be interested in assisting and could be > approached (i.e. will the Munich contract require Kontact on Mac?). > KDAB/Till has a lot of expertise in this area but little time now. I > think KDAB had dmg packages for Kontact for easy install, but I don't > know what the status there is. > > Qt is having maintenance issues on Mac themselves, Digia has limited > resources, and there seems few community-led contributions, but they > do have CI and may be able to offer advice. > > I really want us on Mac, when you see how rubbish or locked-down their > apps are you realise we could make a decent splash there. Now I > regularly code for and build Qt over there I feel a lot more > comfortable as a conduit if needed. I'm willing to be a guinea pig in > trying to get kdesrc-build working on Mac for our devs and CI to use, > heck I'm willing to switch to Mac for all my KF5 dev work if needed! > I just need someone who knows what they're doing to point me in the > right direction and answer my confused cries for help :-) > > But what we need most right now is a Mac experienced sysadmin to take > on setting up and maintaining the Mac infrastructure, then a > fundraiser to get the hardware. And for people to start talking to > each other on kde-mac. > > Cheers! > > John. Thanks, Ben > >>> Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub to unsubscribe << >> Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub to unsubscribe <<