dmg-license icon indicating copy to clipboard operation
dmg-license copied to clipboard

Localized names of some languages start with lowercase letter.

Open knaos opened this issue 2 years ago • 3 comments

Hello. What is the reasoning behind using lowercase letters for some language's localizedNames? For example French or Italian? We are trying to add multiple license files to an application but in the language select some of them are with capital letters and some of them lowercase. image I tried to change those values by providing configuration in licenseButtons file but none seems to work.

knaos avatar Jun 09 '22 11:06 knaos

First of all, a warning: you probably shouldn't be using this. DMG license functionality is deprecated by Apple, isn't fully functional any more (hdiutil attach no longer shows the license), and will probably be removed from macOS entirely soon. See issue #11 for details.

Anyway, the default language names are taken from Java, specifically the LocaleNames_*.properties files in this folder. Why some of them are capitalized and others not, I have no idea.

I would have preferred to use an Apple or JavaScript API for this, but I couldn't find one, so I went with Java. There now is a JavaScript API for this purpose, but I don't believe it existed when I wrote dmg-license. Moreover, it has the same problem (tested in Node.js 16.13.0 on Linux):

> new Intl.DisplayNames(['it'], {type: 'language'}).of('it')
'italiano'

You should be able to override the language name with a languageName field in your labels (that's what dmg-license calls them; electron-builder calls them licensebuttons, but it's mostly the same thing). Did you already try that? If so, did you use the correct field name?

argv-minus-one avatar Jun 09 '22 20:06 argv-minus-one

I bumped upon the same thing. Hoped I could change that in the language-info.json file, but couldn't, no effect. Are you sure that DMG license functionality is deprecated by Apple? Can't find a source at Apple for that.

Enoxyzz avatar Feb 20 '23 16:02 Enoxyzz

@Enoxyzz:

Hoped I could change that in the language-info.json file, but couldn't, no effect.

Again, you need to supply a languageName in your labels for that language if you want to change the displayed language name.

Are you sure that DMG license functionality is deprecated by Apple? Can't find a source at Apple for that.

If you run man hdiutil on an up-to-date Mac, type /Deprecated hdiutil, and press Return, you should see the deprecation notice from Apple.

argv-minus-one avatar Feb 20 '23 21:02 argv-minus-one