3
\me\' @ s d dl Z d dlZd dlmZ d dlmZmZmZ d dlm Z d dl
mZ d dlm
Z
e jeZdZdZd ZG d
d dejZdd
dZedfddZdddZdddZdS ) N)List)distrossubputil)Apt)PackageManager)HostnameConfa8 # This file is generated from information provided by the datasource. Changes
# to it will not persist across an instance reboot. To disable cloud-init's
# network configuration capabilities, write a file
# /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg with the following:
# network: {config: disabled}
z'/etc/network/interfaces.d/50-cloud-initz/etc/default/localec s e Zd ZdZdddZed eded edd dZ fd
dZdd
Zd'ddZ fddZ
dd Zdd Zdd Z
d(ddZdd Zdd Zd)d d!Zd"d# Zeeeed$d%d&Z ZS )*Distroz
/etc/hostnamez'/etc/network/interfaces.d/50-cloud-initz/etc/netplan/50-cloud-init.yaml)eninetplanr
)Zeni_pathZ
eni_headerr T)Znetplan_pathZnetplan_headerZpostcmdsc s@ t j||| d| _d| _d | _tj| j|| _| jg| _ d S )NZdebianzC.UTF-8)
super__init__Zosfamilydefault_locale
system_localer Zfrom_configZ_runneraptZpackage_managers)selfnameZcfgpaths) __class__ /usr/lib/python3.6/debian.pyr
3 s zDistro.__init__c C s | j st | _ | j r| j S | jS )z9Return the default locale if set, else use default locale)r read_system_localer )r r r r
get_locale> s zDistro.get_localeNLANGc C s |st }|std| j }tjj|}| j }|rFtjdt | j ntjd| jt |j
|j
kpn| pn|}| p||p||}|rt|||d ntjd|| j| |rt|||d d| _dS )zeApply specified locale to system, regenerate if specified locale
differs from system default.zFailed to provide locale value.zVSystem locale not found in %s. Assuming system locale is %s based on hardcoded defaultzSystem locale set to %s via %s)keynamez9System has '%s=%s' requested '%s', skipping regeneration.N)
LOCALE_CONF_FN
ValueErrorr ospathexistsr LOGdebugr lowerregenerate_localeupdate_locale_conf) r localeZout_fnr Z
distro_localeZconf_fn_existsZsys_locale_unsetZ
need_regenZ need_confr r r apply_localeI s<