Custom OS Installs & Default Language

bentoms
Release Candidate Programs Tester

Hi guys,

We’re having some issue with the default language with custom OS installs.

JSS is 7.2.1
Server is 10.5.8

Netboot’s are OS 10.5.8 & 10.6.3.

We’ve uploaded the 10.4, 10.5 & 10.6 release DMG’s from the mac dev center & have downloaded the latest combo updaters for each OS.

We’ve then selected the dmg’s > choosen create custom OS install > changed the language to French > given the installer a display name like 001FR 10.x & installed.

The OS install runs through fine (& subsequent Combo Updates install fine), but the default language is always english.

The only things I’m wondering is:

Does the netboot need to be in the language your selecting?
Are the apple dmg’s from the dev site NOT suitable for this method of imaging?

--

Grey Communications Group Limited
Registered No. 1795794, Registered in England
Registered Office The Johnson Building, 77 Hatton Garden, London, EC1N 8JS
VAT Number GB 404 6245 78

8 REPLIES 8

tlarkin
Honored Contributor

Ben

in the ~/Library/Preferences/.GlobalPreferences.plist file you can set
the available languages. Look at the top lines:

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN"
"http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>AppleLanguages</key> <array> <string>en</string>

If you alter this file in your user template, composer snap shot, or
via MCX I believe you will be able to set it for the user at that given
time. I am not sure if you can change the global language to anything
at all, but rather user level instead.

-Tom

bentoms
Release Candidate Programs Tester

Thanks Thomas.

I found this earlier.

defaults write -g AppleLanguages -array en ja fr de es it nl sv nb da fi pt zh-Hans zh-Hant ko

Will set the preferred User language translations to English, Japanese, french etc...

So changing this as a logged in user will change it for them only.

To change for the system you need to run:

sudo languagesetup -langspec French

This will change the language for the system (login window etc..) but not the user...

This does throw up some interesting ideas.. Like having one 10.6 image across a large number of environments.. With a firstrun script setting OS language & OD setting user language...

On a global OD domain (read:magic triangle).. This would allow a french user to visit a london office & login to a mac & still be presented in their mother tongue..

Not the way I was looking a deploying images.. But interesting all the same..

Will need to do this then play with localised packages methinks...

Could be very handy & flexible.

bentoms
Release Candidate Programs Tester

Just to follow up:

User Language can be set via mcx etc here: ~/Library/Preferences/.GlobalPreferences.plist

System Language: /Library/Preferences/.GlobalPreferences.plist

Will test this lot tomorrow...

So, a computer list could manage the system language & a user group the users.. If wanted that way..

If no language is set for a user, it will be International English (i.e local non-managed admin accounts).

bentoms
Release Candidate Programs Tester

Correction:

User Language can be set via mcx etc here: ~/Library/Preferences/.GlobalPreferences.plist

System language is set via the command : languagesetup -langspec (language in English)..

Ben Toms
IT Support Analyst GREY Group
The Johnson Building, 77 Hatton Garden, London, EC1N 8JS
T: +44 (0) 20-3037-3819 |
Main: +44 (0) 20 3037 3000 | IT Helpdesk: +44 (0) 20 3037 3883

bentoms
Release Candidate Programs Tester

Ok I think I'm over complicating things.

Does anyone know what switch setup assistant give the OS installer to tell it what OS, input source & default user template to use?

Ben Toms
IT Support Analyst GREY Group
The Johnson Building, 77 Hatton Garden, London, EC1N 8JS
T: +44 (0) 20-3037-3819 |
Main: +44 (0) 20 3037 3000 | IT Helpdesk: +44 (0) 20 3037 3883

bentoms
Release Candidate Programs Tester

I hope this all helps someone else.

We need to have different configuartions etc based on the major eurpoean languages.

We were orignally looking at setting the OS Language via the custom os install options, but have been advised by JAMF that this does not work.

So we needed a work around to achieve the same.

I’ve got this working by narrowing it down to 4 plists... I’m then editing these for each language needed & making Composer dmg’s of each plist to distribute.

The upside of using this method is that we can use a single config per OS version with smart configs based on it that change the language as required.

(I’ll script later, but need to figure out how to apply to fill user templates from a shell script).

Basically, make the changes & copy the below files:

Set OS Keyboard Language:

Change OS Keyboard from input source at login window.

Make a composer DMG of: /Library/Preferences/com.apple.HIToolbox.plist (there are multiple dictionary keys that need to be changed).

Set OS Primary Language:

Interactive command: sudo languagesetup for list of languages,

example: sudo languagesetup –langspec French (will change OS language to french).

After change make a composer dmg of: /Library/Preferences/.GlobalPreferences.plist

Terminal commands for the above:

Set language order preference: /usr/bin/defaults write /Library/Preferences/.GlobalPreferences AppleLanguages "(en, ja, fr, de, es, it, nl, sv, nb, da, fi, pt, zh-Hans, zh-Hant, ko)"

Set locale: /usr/bin/defaults write /Library/Preferences/.GlobalPreferences AppleLocale "en_GB"

Set Country: /usr/bin/defaults write /Library/Preferences/.GlobalPreferences Country "en_GB"

Set User Keyboard Language:

Change languages for user text input in system preferences.

Make a composer dmg of: ~/Library/Preferences/ByHost/com.apple.HIToolbox.<UID>.plist

Set to fill user templates & tick update ByHost in remote/policy.

Set User Language:

Run the below command as a logged in user to set the Language Preference order (make changes as required):

/usr/bin/defaults write -g AppleLanguages "(en, ja, fr, de, es, it, nl, sv, nb, da, fi, pt, zh-Hans, zh-Hant, ko)"

Make a composer dmg of: ~/Library/Preferences/.GlobalPreferences.plist

Set to fill user templates.

andysemak
Contributor

Sorry for the bump.

Just wanted to give my thanks for this Bentoms.

Are you still using this workflow?

bentoms
Release Candidate Programs Tester

@andysemak, sorry for the late reply.. But pretty much.

We just have one config now though & they are getting British.