site  contact  subhomenews

EasyOS 0.9.18 French build

January 12, 2019 — BarryK

I announced a Portuguese build this morning:

http://bkhome.org/news/201901/easyos-0918-portuguese-build.html

Now there is a French build, download from here:

http://distro.ibiblio.org/easyos/amd64/releases/pyro/0.9.18/

Anyone fluent in French is invited to test this.

And, if you feel like it, get involved with improving the translations. This involves using MoManager, and creating a updated fr "langpack" PET.

You might like to read earlier blog posts:

http://bkhome.org/news/201901/easyos-0918-with-german-build.html

http://bkhome.org/news/201901/hunspell-non-english-dictionaries.html

http://bkhome.org/news/201901/non-english-builds-of-easyos.html

http://bkhome.org/news/201901/syslinux-and-refind-boot-manager-translation.html

http://bkhome.org/news/201901/translation-of-early-boot-messages.html

For Puppy Linux, the main fr translator was forum member 'esmourguit', but I don't think that he has visited the forum for some time -- I just checked, his last post was July 2017. Someone can decided to be the main guy for fr, through which others liaise.

The outcome should be an updated fr langpack PET. It will be too time-consuming for me to micro-manage each language build of EasyOS, so I want an updated langpack, that's it, just the one file, makes it easy for me, rather than people sending me lots of individual translations.

Having said that, for the next couple of releases after 0.9.18, translations for individual scripts and documents will be accepted.

Note, this langpack will be different from the one in Puppy Linux, although there are many common apps and scripts. However, for this first fr build, I used an old Puppy Linux langpack PET, created by esmourguit, dated 2014-12-19:

http://distro.ibiblio.org/easyos/noarch/packages/pet/pet_packages-noarch/langpack_fr-20141219.pet

Furthermore, I won't keep releasing a language-specific build of EasyOS if there is no interest. Someone may only want to commit to being a translator for a short time, that's OK. 

Tags: easy

EasyOS 0.9.18 Portuguese build

January 12, 2019 — BarryK

I have created EasyOS 0.9.18, Portuguese (pt). Download from here:

http://distro.ibiblio.org/easyos/amd64/releases/pyro/0.9.18/

Anyone fluent in Portuguese is invited to test this.

And, if you feel like it, get involved with improving the translations. This involves using MoManager, and creating a updated pt "langpack" PET.

You might like to read earlier blog posts:

http://bkhome.org/news/201901/easyos-0918-with-german-build.html

http://bkhome.org/news/201901/hunspell-non-english-dictionaries.html

http://bkhome.org/news/201901/non-english-builds-of-easyos.html

http://bkhome.org/news/201901/syslinux-and-refind-boot-manager-translation.html

http://bkhome.org/news/201901/translation-of-early-boot-messages.html

For Puppy Linux, the main pt translator was vicmz (Puppy Forum member), so it is probably a good idea to liaise with him. Someone can decided to be the main guy for pt, though which others liaise.

The outcome should be an updated pt langpack PET. It will be too time-consuming for me to micro-manager each language build of EasyOS, so I want an updated langpack, that's it, just the one file, makes it easy for me, rather than people sending me lots of individual translations.

Note, this langpack will be different from the one in Puppy Linux, although there are many common apps and scripts. However, for this first pt build, I used an old Puppy Linux langpack PET, created by vicmz, dated 2013-01-10:

http://distro.ibiblio.org/easyos/noarch/packages/pet/pet_packages-noarch/langpack_pt-20130110.pet

Furthermore, I won't keep releasing a language-specific build of EasyOS if there is no interest. Someone may only want to commit to being a translator for a short time, that's OK. 

Tags: easy

EasyOS 0.9.18, with German build

January 11, 2019 — BarryK

Momentous occasion!

As posted about recently, woofE, the easyOS builder, is now capable of non-English builds. I have started the ball rolling with the usual English build, plus German (de) build.

They can be downloaded from here:

http://distro.ibiblio.org/easyos/amd64/releases/pyro/0.9.18/

Write to a USB-stick, instructions here:

https://easyos.org/install/how-to-write-easyos-to-a-flash-drive.html

The German build is ready-to-go, with just about everything translated. However, there are English strings here and there. In some cases, it is due to using an old de "langpack" PET, from 2015.

The invitation is open to contribute translations. This could be something simple, such as updating the translation for QuickSetup (that runs at first bootup, the script is /usr/sbin/quicksetup) -- as the translation is old, so some text is still in English.

The German translations have traditionally most been Lutz's baby (name on Puppy Forum is L18L), and if you translate something, liaise with him about it. The final aim will be to create a new de langpack.

You can use MoManager to manage translations, that you will find in the Utility menu. For now, use the "old" version, as it has some fixes for EasyOS.

0.9.18 de issues

The 0.9.18 de build has a couple of things that slipped through:

Some early bootup text strings (running the 'init' script in the initrd) are in English. There was a hiccup, the POT file is /usr/share/doc/nls/easyinitrd/easyinitrd.pot. The translation is at /usr/share/locale/de/LC_MESSAGES/easyinitrd.mo, but I think I left an older .mo file there.

...MoManager can easily update it.

Another issue is that LibreOffice is not translated. I don't know what went wrong there. I had fixed it, but somehow the latest build has unfixed it.

fr, pt, builds coming

I plan to build some more language-specific builds over the next couple of days. Will do Google translations of a few scripts, to improve the initial impression.

Choice of what languages to build, depends on who is interested in getting involved. That is, test it and use MoManager to improve the translations.

Feedback

There is an ongoing thread on the Puppy Forum:

http://murga-linux.com/puppy/viewtopic.php?p=1014912#1014912 

Tags: easy

Hunspell non-English dictionaries

January 09, 2019 — BarryK

I posted yesterday about non-English builds of EasyOS:

http://bkhome.org/news/201901/non-english-builds-of-easyos.html

I have fixed LibreOffice, it now displays with translation.

Another problem is that Easy is built with Hunspell en_US dictionary. I am leaving that in, but now also automatically adding a language-specific dictionary.

Toward that end, have created PETs, see 'hunspell-<language>-<version>.pet' here:

http://distro.ibiblio.org/easyos/noarch/packages/pet/pet_packages-noarch/

These were created by opening up 'hunspell-<language>-*.deb' Debian packages. So, if you want to create another PET, go to packages.debian.org or packages.ubuntu.com, download the DEB, open it up, then use one of my existing PET packages as a template to guide you to create the new PET. 

Tags: easy

Snapshots of all console fonts

January 09, 2019 — BarryK

This is handy, this chap (Alexandre) has taken photos of all the console fonts in the 'kbd' package:

http://alexandre.deverteuil.net/pages/consolefonts/

Should be useful when trying to choose most appropriate console font for a particular language. 

Tags: easy

Non-English builds of EasyOS

January 08, 2019 — BarryK

I have wanted to do this for years!

Puppy Linux has "langpacks", PET packages named like 'langpack_de-20150419.pet', for the case of a German (de) langpack.

What happens, is you would boot the English Puppy, then choose an appropriate locale, then install an appropriate langpack.

That's OK, however, there is a better way. It is possible to build specific non-English distributions in Woof. Or rather, it can be done with some modifications, mostly to the '3buildeasydistro' script in WoofE (my fork of Woof for building EasyOS).

The advantage of doing it this way is two-fold. Firstly, the '2createpackages' script in Woof extracts all of the translation files as <packagename>_NLS from the original binary packages. These are not included in the build, due to the size. However, a specific language, say 'de' or 'de_*', could be extracted and included in the build.

Also, an appropriate langpack, if it exists, can be included in the build.

So, we have just about everything translated. The second aspect is that the build is ready-to-go in that language, nothing to do.

So, I have done it. WoofE can now build for any language you choose. I have done a 'de' build. I built 'easy-0.9.18-de-amd64.img.gz', and very interesting, it is 8MB bigger than the English build, so there are a lot of de translation files in there! Wrote it to a USB stick and booted:

img1

...this is the reFind boot mamaner menu. See those two "??" -- that is because reFind cannot display UTF-8 characters. We need to do some research on how Syslinux and reFind boot menus can display non-English characters.

Also, some text, for example "Reboot Computer" is built into the refind binary. That also needs to be researched.

After choosing "normales bootup", the init script in the 'initrd' will execute:

img2

...UTF-8 characters now display OK. I do need to give some attention to the different lengths of the background colours.

Then there is a desktop:

img3

...everything is translated, including most apps.

Notice some English strings in QuickSetup. This is due to using an old /usr/share/locale/de/LC_MESSAGES/quicksetup.mo.

Also, the 'de' langpack is dated 20150419, very old. With this 'de' build, it will be very easy to update the langpack. Just run MoManager from the Utility menu, and it is pretty straightforward. You will be able to create updates for particular menus or apps, or even create a new langpack.

I am thinking of releasing several language-specific builds of EasyOS, and everyone will be invited to contribute to updating the translations.

Note that the Utility menu has two entries for MoManager:

MoManager create non-English EasyOS
MoManager translation manager, old version

They are, respectively, /usr/sbin/momanager and /usr/sbin/momanager0. The latter is an older version. I currently use the older version, as it has some fixes for EasyOS. Lutz (Puppy Forum member L18L), has contributed to both, and has put many enhancements into the later version.

We are just getting into non-English support in EasyOS, and most likely Lutz will checkout the later version and make sure it runs well in EasyOS.

Note also, the langpacks in the 'noarch' PET repository all come from Puppy and Quirky Linux days. These are expected to be updated to work nicely in EasyOS. 

Tags: easy

SeaMonkey misbehaving

January 06, 2019 — BarryK

We currently have SeaMonkey 2.49.4 in EasyOS. It starts up at file:///usr/share/doc/home.htm

Fine, except in recent builds of EasyOS, it has been doing this:

file:///usr/share/doc/easy/home_en.htm%E5%E5%E5%E5%E5%E5%E5 cannot be found
Except that it isn't anymore! (grinding of teeth)

Yep, I started this post to report the problem, started SM, and the problem has gone away. I also tested with Chromium, that works OK also.

File /usr/share/doc/home.htm has this in it:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<meta http-equiv="refresh" content="0; url=file:///usr/share/doc/easy/home.htm" />
<title></title>
</head>
<body>
</body>
</html>
File /usr/share/doc/easy/home.htm is a symlink to home_en.htm

Somehow, SM was getting upset by that symlink, appending those "%E5" characters. Now it isn't. Perplexing.

Tags: easy

Syslinux and reFind boot-manager translation

January 06, 2019 — BarryK

EasyOS ships as an image file that may be written to a USB Flash stick, or even an SSD, or the contents extracted and manually installed into a SSD/HD.

The image file contains two boot manager, Syslinux for booting on traditional BIOS PCs, and reFind for booting on UEFI PCs. These boot managers provide a menu, which is in English.

It is probably not a big deal, as most non-English computer users probably understand some simple English words. However, for the complete translation experience, translation of the boot managers is now implemented.

initrd and gettext

I posted yesterday about implementation of the initrd:

http://bkhome.org/news/201901/translation-of-early-boot-messages.html

This is done using gettext. The initrd needs to have support for the language in it. When there is a change of locale, /usr/lib/locale/<lang>, for example /usr/lib/locale/de_DE.utf8, is copied into the initrd, however, /usr/lib/locale/de_DE.utf8/LC_COLLATE and LC_CTYPE are left out due to their sizes.

Also, /usr/share/locale/<language>/LC_MESSAGES/easyinitrd.mo, for example /usr/share/locale/de/LC_MESSAGES/easyinitrd.mo, if it exists, is copied into the initrd.

Then, "INIT_LANG='de_DE.UTF-8'" is appended to /BOOT_SPECS in the initrd, and the initrd is good-to-go, translated.

This is MoManager-friendly. When MoManager is run (in the Utility menu), there is /usr/share/doc/nls/easyinitrd/easyinitrd.pot, and an existing translation will be found at /usr/share/locale/<language>/LC_MESSAGES/easyinitrd.mo. Anyone will be welcome to either do a new translation or tweak the existing one. You need to run MoManager to see how to do this, it is quite easy, much easier to just do it rather than me try to explain how.

Boot managers and SSS

I elaborated on translation of the initrd above, to emphasize that it is different from how the boot manager menus are translated. The menus are translated using SSS (Simple String Replacement).

There is a file, /usr/share/sss/boot_strings/boot_strings. Just a text file, and inside you will find lines like this:

s%Commandline only, do not start X%%

In a text editor, insert translations, like this for German:

s%Commandline only, do not start X%Nur Befehlszeile, starten Sie X nicht%

And save the translated file as /usr/share/sss/boot_strings/boot_strings.de

That's it, done. Whenever there is a locale change, the translation file will be applied to the boot manager menus (files syslinux.cfg and refind.conf) in the boot-partition.

You can also use MoManager to manage SSS translations. Which really just does the same thing, opens the file in a text editor.

Some technical details:

/usr/sbin/quicksetup is where locale change is made. /usr/sbin/chooselocale is a symlink to quicksetup.

When locale is changed, then /usr/sbin/lang2initrd is called, which asks if you want to translate the initrd and boot-manager menus in the boot-partition, If yes, then calls /usr/sbin/fixinitrd and /usr/sbin/fixboot -- actually, both of those are symlinks into /usr/sbin/fixdesk.

In the case of fixboot, if a boot_strings.<language> file exists,then it is applied to the boot-manager menus.

Tags: easy