-
-
Notifications
You must be signed in to change notification settings - Fork 15.5k
KDE PIM Applications #27224
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
KDE PIM Applications #27224
Conversation
@ttuegel, thanks for your PR! By analyzing the history of the files in this pull request, we identified @peterhoeg, @vandenoever and @phunehehe to be potential reviewers. |
@ttuegel Wow, that's a lot of work again. I noticed today that this is now on top of the merged 'Unwrap Qt 5 packages' PR. I'll put a vm to work so I can test this. |
It looks as if it's program output. |
When I start kmail in clean environment on a non-kde desktop (lumina), it crashes when doing the first run wizard. It says: "The Email program encountered a fatal error and will terminate now. Maybe it's due to the kuiserver not being found. |
kmail has no icons. Installing oxygen with nix-env does not solve that issue. I can run
This is in a clean home directory. The 'invalid parent' error also happens when running in a plasma5 environment. In a plasma5 environment, the icons are present and I can configure a maildir and read mails there. This is more functionality than any previous attempt! In fact, it's better than kmail 1 because search works. |
Is this really the ultimate cause? When kmail starts, I get lots of warnings about "invalid parent" due to kwallet, but everything proceeds to start. I wonder if it is just reporting the last message as the "error". |
Simply installing 'breeze-icons' does not give kmail icons. 'qt5ct' on lumina tells me 'The QT_QPA_PLATFORMTHEME environment variable is not set correctly'. But most importantly, without the rest of kde, the maildir does not work. Probably other mail plugins also do not work. One of the errors is "Error loading KCM plugin "kcm_kmail" "The shared library was not found." The 'invalid parent' only happens the first time when logging into a fresh plasma and starting kmail for the first time. |
Yes, there is some special value you must set for I am going to try to track down this error,
assuming for the moment that the missing icons are not related to this problem, because I have gotten that error before, yet I see all the icons! |
@ttuegel how can I help get this merged? |
/me is at akademy atm and could discuss any issues with kde pim people in person. |
@vandenoever It’d be lovely if you could. KDE PIM is IMHO one of the few big things still missing in NixOS. P.S. Say hi for me to everyone at Akademy. Sadly this year it clashes with a work retreat, so I can’t attend. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Awesome work, thank you so much for doing this!
}: | ||
|
||
mkDerivation { | ||
name = "akonadi"; | ||
meta = { | ||
license = [ lib.licenses.lgpl21 ]; | ||
maintainers = [ lib.maintainers.ttuegel ]; | ||
maintainers = kdepimTeam; | ||
}; | ||
patches = copyPathsToStore (lib.readPathsFromFile ./. ./series); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What is the reason for copying patches to the store?
maintainers = kdepimTeam; | ||
}; | ||
output = [ "out" "dev" ]; | ||
patches = copyPathsToStore (lib.readPathsFromFile ./. ./series); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A one-liner on why the patches are needed would be great.
pkgs/applications/kde/srcs.nix
Outdated
@@ -78,7 +78,7 @@ | |||
version = "17.04.2"; | |||
src = fetchurl { | |||
url = "${mirror}/stable/applications/17.04.2/src/akregator-17.04.2.tar.xz"; | |||
sha256 = "0ngpw432pm57p34y4wcvrxlrlmixlgrpqawgn2b73dhvb2m8ypvy"; | |||
sha256 = "0r91kjxggds46s0vzygkvjckqiyw5kx0jbb38paniynviqz72zwi"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why are all the checksums changing if the version isn't?
gives
I do not know how to suppress that. Then running kmail gives:
This is because all applications that use QtWebRender require X and the use of xcb is hardcoded even though the desktop maybe using a different QPA (Qt Platform Abstraction plugin). https://cgit.kde.org/kmail.git/tree/src/main.cpp?h=v17.04.3#n108 One solution is to patch that out, another is to get xcb to work. xcb is currently installed.
|
I can get the GUI of kmail visible with this:
which then gives this error:
|
I tried patching kmail.nix:
|
It turns out that if you simply install kmail with All that's needed is to add $kmail/share to This small snippet is a workaround for that.
|
The situation with Configure KMail is even weirder. it works when kmail is started from KRunner or And sending mails does not work yet because the kio plugin for smtp is not found.
|
The situation with Configure KMail is even weirder. it works when kmail is started from KRunner or And sending mails does not work yet because the kio plugin for smtp is not found.
I've now made one adaptation to my environment which makes this all work.
|
@ttuegel: Maybe it's a good idea to use the following one-liner to rewrite the author to @vandenoever: git filter-branch --env-filter 'export GIT_AUTHOR_NAME="Jos van den Oever" GIT_AUTHOR_EMAIL="jos@vandenoever.info"' master..HEAD |
Please update to 17.04.3 before merging this. KMail has an annoying bug where moving multiple mails does not update the data model of the user interface. |
Is this going to be merged before the 17.09 branch off? |
I'd be in favor of that. i've been using this package for a few weeks now. Probably even better would be if 17.09 could include KDE Applications 17.08. https://community.kde.org/Schedules/Applications/17.08_Release_Schedule |
Prepackages for 17.08 are here: https://download.kde.org/unstable/applications/17.07.90/src/ |
QStringLiteral stores strings in UTF-16 encoding. Nix cannot decode such paths, so we must use QLatin1String for strings that may be paths, or the dependency graph will be broken!
qgpgme uses Q_ASSERT which causes build inputs to be retained unnecessarily at runtime unless debugging is disabled.
This reverts commit cb922bbd5855aba00b96f223dce50c4556472a25.
This reverts commit a6d746fbd12a6633e775e2cb52793f4baa8bab36.
Use plain unzip instead of unzipNLS, which is unnecessary and also broken.
I'm satisfied now that, while this is not perfect, the best way to move forward is to merge to get this into the hands of users. |
🎉 |
Motivation
This would add the KDE PIM application suite to Nixpkgs.
Testing
(nix.useSandbox on NixOS,
or option
build-use-sandbox
innix.conf
on non-NixOS)
nix-shell -p nox --run "nox-review wip"
./result/bin/
)This is my second attempt. It is correctly rebased to master this time! Again, credit here should go to @vandenoever.