1)Getting fonts: I got the Slackware version of the Hebrew font pack Culmus (Puppy being Slack-based). You could get any font pack for your language, though (Slack just has a similar structure, so you know they'll go into one of Puppy's font directories). Google will help you find your own language.
I opened the tarball and put everything in place (fonts in /usr/share/fonts/culmus and culmus.conf file in /etc/fonts/), but you can probably install them as an "Alien Package" with pupget. However, you'll probably need fc-cache first (see #4) and it still might not be enough (no fonts.dir file).
2)Creating fonts.dir: Each font directory should have a fonts.dir file and either a fonts.scale or fonts.alias (depending on the type of fonts they are). Look inside yours and see what you've got.
Open a terminal and cd to the new directory:
Code: Select all
cd /usr/share/fonts/culmus
To create fonts.dir type mkfontdir (note: it is created from the .scale/.alias file- so this one should already exist) (see also ** at the end).
3)Adding the new font path: In the Control Panel menu you'll find Gxset. Start it, go to the "font path" part and choose "New". Type in the new path (or browse to find it), tick the "allow scaling" box and press ok. Now press "Apply".
If you didn't get an error message you can now save your changes (else they'll be lost when you restart X).
Press "Save" and then press ok. Don't change the location (/root) or name (.xset.sh) of the file (when you start X, .xinitrc searches for .xset.sh in /root).
Now type in a terminal:
Code: Select all
chmod a+x /root/.xset.sh
4)fc-cache: The installation script that came with my font pack required the binary fc-cache (attached below, taken from Vector). Get it and put it in /usr/X11R6/bin/.
Now open a terminal and type "fc-cache -f". That will (re)generate the "fonts.cache" files you'll find in all the font directories.
Now you should be able to see your fonts everywhere (you might have to restart X first).
5)Removing fonts: The Culmus font pack was about 4.5MB in size (a lot in Puppy terms...) so I opened up Abiword, tried all the fonts out and then removed some (cutting it down to 1.5MB).
I also removed a couple of the fonts that come with Puppy (each "font" meaning a set of 8 files with similar names), from /usr/share/fonts/default/Type1, to compensate for what I added.
In both cases I edited the fonts.dir, fonts.scale and fonts.alias files manually: deleted the lines corresponding to the files I removed while keeping count of how many lines I deleted- that number has to be subtracted in the end from the total at the head of the list. (You could run mkfontscale and mkfontdir. See ** below.)
I restarted X and the removed font names still appeared in Abiword, but when I tried to select them it just shut down.
Only after running "fc-cache -f" again weree things ok.
*)Truetype unicode fonts: You might also want to add some TTF unicode fonts. They're used in some of the window managers and also by Rox 2.4.1 to show non-Latin filenames. I use Bitstream Vera (Attached. 4 styles:"sans" and "mono", both regular and bold. 221k uncompressed, complete with fonts.scale and fonts.dir. Taken fron Bombayrockers' XFCE 4.2.2 dotpup. Also used in MU's Enlighenment themes.)
As above- stick them in place, add font path and run "fc-cache -f".
**)Tip: When you rum mkfontdir it lists each font once for each of the encodings it can be used under- which can be quite a lot! For example, the fonts in Puppy can actually be used as iso8859-1, -2, -9, -15, and iso10646-1 (unicode). If you just do mkfontdir and don't delete multiple entries (as Barry appears to have done), it can be rather confusing selecting a font in Beaver: for each font "name" it gives you a list of all the types (medium, medium semicondensed, bold...) for each of the encodings!
Beaver (and maybe other editors?) also has a problem using those fonts as unicode (tells you they won't be displayed properly)- which is always at the top of the list.
Hence, if you can be bothered, it is advisable to look through the fonts.dir file after running mkfontdir and cleaning it (not forgetting to change the count at the top).
(Yes, I this is long, but a few extra lines here and there can save people a lot of head-scratching sometimes...)