View Single Post
Posts: 123 | Thanked: 33 times | Joined on Jan 2010 @ Stockholm
#21
Heh... I tried to solve the problem by moving the LOCALEs out of the root file system. So, I looked in the /opt/maemo/usr/share/locale and found it was already there. So I deleted the /usr/share/locale and symlinked it to the /opt one. That gave me room enough to install the update today.

And it made my phone look very silly after the reboot. The /opt LOCALE only contained hildon-application-manager locales, and no others. So, most text fields said things like "Wdgt_Sys_24Hr_Clock" and such, instead of "23:37" and similar more meaningful statements. And in addition to look funny, it made the GUI broke at some places, moving buttons out of reach.

So, I had the problem that I wanted to bring back locales from hundreds of packages, but I didn't want to reinstall all my packages.So, I started with:

Code:
dpkg --get-selections | grep install | grep -v deinstall | awk '{print "apt-get --force-yes -yy -d install --reinstall" $1}' > /home/user/pkg.list
to get a list of all installed packages, including the apt-get command to download the .deb files. I ran the file, and all the .deb's were put in the apt-cache (which I long ago moved away from the root file system).

Next, I did:

Code:
/home/user/.apt-cache/archives # for i in *.deb ; do dpkg --fsys-tarfile /home/user/.apt-cache/archives/${i} > /home/user/MyDocs/pkgfiles/${i}.tar ; done
to get the actual files (tar:ed) out of the .deb files. After that I did:

Code:
/home/user/MyDocs/pkgfiles # for i in *.tar ; do tar xvf ${i} ; done
to unpack them from the tar files.

And then I just copied /home/user/MyDocs/pkgfiles/usr/share/locale/* to /usr/share/locale/

I could have done it a bit more neat by only extracting the locale files and so on, but it was quick and dirty and it did the job. Now my phone speaks English again.

And, listan people... I DID ALL THIS ON A CELL PHONE! It wasn't some UNIX server. It wasn't even a Linux laptop. IT WAS A CELL PHONE!

God, I love this machine.

/P
 

The Following User Says Thank You to Palleman For This Useful Post: