diff --git a/pkgs/applications/networking/mailreaders/trojita/default.nix b/pkgs/applications/networking/mailreaders/trojita/default.nix index 6f885dd18beb..52d4d77a4009 100644 --- a/pkgs/applications/networking/mailreaders/trojita/default.nix +++ b/pkgs/applications/networking/mailreaders/trojita/default.nix @@ -1,6 +1,7 @@ { akonadi-contacts , cmake , fetchgit +, fetchsvn , gnupg , gpgme , kcontacts @@ -15,11 +16,14 @@ , qtkeychain , qttools , qtwebkit +, qttranslations +, substituteAll +, withI18n ? true }: mkDerivation rec { pname = "trojita"; - version = "0.7.20200706"; + version = "unstable-2020-07-06"; src = fetchgit { url = "https://anongit.kde.org/trojita.git"; @@ -27,6 +31,18 @@ mkDerivation rec { sha256 = "0r8nmlqwgsqkk0k8xh32fkwvv6iylj35xq2h8b7l3g03yc342kbn"; }; + l10n = fetchsvn { + url = "svn://anonsvn.kde.org/home/kde/trunk/l10n-kf5"; + rev = "1566642"; + sha256 = "0y45fjib153za085la3hqpryycx33dkj3cz8kwzn2w31kvldfl1q"; + }; + + patches = (substituteAll { + # See https://github.com/NixOS/nixpkgs/issues/86054 + src = ./fix-qttranslations-path.patch; + inherit qttranslations; + }); + buildInputs = [ akonadi-contacts gpgme @@ -48,6 +64,14 @@ mkDerivation rec { gnupg ]; + postPatch = "echo ${version} > src/trojita-version" + + lib.optionalString withI18n '' + mkdir -p po + for f in `find ${l10n} -name "trojita_common.po"`; do + cp $f po/trojita_common_$(echo $f | cut -d/ -f5).po + done + ''; + meta = with lib; { description = "A Qt IMAP e-mail client"; homepage = "http://trojita.flaska.net/"; diff --git a/pkgs/applications/networking/mailreaders/trojita/fix-qttranslations-path.patch b/pkgs/applications/networking/mailreaders/trojita/fix-qttranslations-path.patch new file mode 100644 index 000000000000..c4eac3956508 --- /dev/null +++ b/pkgs/applications/networking/mailreaders/trojita/fix-qttranslations-path.patch @@ -0,0 +1,13 @@ +diff --git i/src/Gui/main.cpp w/src/Gui/main.cpp +index 851db4f1..e997f46e 100644 +--- i/src/Gui/main.cpp ++++ w/src/Gui/main.cpp +@@ -52,7 +52,7 @@ int main(int argc, char **argv) + + QTranslator qtTranslator; + qtTranslator.load(QLatin1String("qt_") + QLocale::system().name(), +- QLibraryInfo::location(QLibraryInfo::TranslationsPath)); ++ QLatin1String("@qttranslations@/translations")); + app.installTranslator(&qtTranslator); + + QLatin1String localeSuffix("/locale");