KService, ksycoca and translations
Albert Astals Cid
aacid at kde.org
Wed Sep 9 23:54:03 UTC 2015
El Dimarts, 8 de setembre de 2015, a les 22:08:58, David Faure va escriure:
> On Monday 07 September 2015 23:34:54 Albert Astals Cid wrote:
> > El Dilluns, 7 de setembre de 2015, a les 23:28:40, Albert Astals Cid va
> >
> > escriure:
> > > Running
> > >
> > > LANGUAGE=de kcmshell5 --list
> > >
> > > in my catalan based system gives me almost everything in catalan.
> > >
> > > That is because most of the strings come from kservice and my sycoca is
> > > in
> > > catalan.
>
> It's funny that you hit this now, one day after I offer a solution for it,
> because it has worked this way for 15 years :-)
I know this bug existed for long, it's just that TODO lists are long and
prodding sometimes helps and i guess frameworks somehow made it easier for me
to tackle it.
>
> > > Possible ways forward i see:
> > > 1) When recreating the sycoca fall back to calling kbuildsycoca
> > > ourselves
> > >
> > > (there's code for that already) when the version matches but not the
> > > language
>
> Yes.
>
> > > Actually does anyone know why we're calling kded to call kbuildsycoca if
> > > we
> > > could (and have code to) call kbuildsycoca directly.
>
> Your patch is for old kservice code btw. I changed it on Aug 22 to not
> mention kded anywhere anymore. So if you were using current sources your
> patch would have worked :-)
Meh, i guess the local modification on the CMakeLists.txt to make it compile
with older ECM made me the pull fail and i did miss it :/
>
> But anyway, I'm reworking this.
>
> > Anything i can do to help there?
>
> You can give your input in that other thread in case you see any pitfall I
> might have missed. One thing I'm unsure about is how to avoid 10 apps
> rebuilding sycoca at the same time; QSaveFile avoids corruption but not
> unnecessary work. QLockFile avoids parallel work but avoiding unnecessary
> work by figuring out if something changed after the last rebuild... well ok
> we could read the global header of the built-by-someone-else sycoca, and
> redo the checkTimestamp logic (to compare dirs mtime with that timestamp).
>
> You can also review the patches I'm writing right now once they are on
> reviewboard ;) I'll add you as reviewer.
I will!
> Right now my problem is how to cut this work into individual pieces.
> I think I'll start by removing --checkstamps and --nocheckfiles, then I'll
> separate the main() from kbuildsycoca.cpp, to prepare for a future move of
> the "build" classes into the lib.
Salut,
Albert
More information about the Kde-frameworks-devel
mailing list