Bug 255300 - sysutils/puppetserver6 invalid C.UTF-8 default locale on 11.x
Summary: sysutils/puppetserver6 invalid C.UTF-8 default locale on 11.x
Status: New
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Some People
Assignee: FreeBSD Puppet Team
Depends on:
Reported: 2021-04-21 11:15 UTC by Ray Bellis
Modified: 2021-04-21 11:15 UTC (History)
0 users

See Also:
bugzilla: maintainer-feedback? (puppet)


Note You need to log in before you can comment on or make changes to this bug.
Description Ray Bellis 2021-04-21 11:15:03 UTC
The rc script for puppetserver6 sets the default locale to C.UTF-8 in the absence of any inherited environment variable.

There is no such locale in FreeBSD 11.x.

While the puppetserver doesn't complain, any Perl scripts invoked via a "generate()" call will do, generating warnings that pollute the output:

pm% setenv LC_ALL C.UTF-8
pm% perl -e exit
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
	LC_ALL = "C.UTF-8",
	LANG = (unset)
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").

For now my only work around has been to symlink /usr/share/locale/en-us.UTF-8 directory to C.UTF-8.     If there's a better way to set the global locale as used by system daemons I've been unable to find it.  All searches point at login.conf but AFAIK that's only used for interactive processes.