# PODNAME: Config::Model::models::Systemd::Section::Install
# ABSTRACT:  Configuration class Systemd::Section::Install

=encoding utf8

=head1 NAME

Config::Model::models::Systemd::Section::Install - Configuration class Systemd::Section::Install

=head1 DESCRIPTION

Configuration classes used by L<Config::Model>

common install section

=head1 Elements

=head2 Alias

A space-separated list of additional names this unit shall be installed under. The names listed
here must have the same suffix (i.e. type) as the unit filename. This option may be specified more than once,
in which case all listed names are used. At installation time, systemctl enable will create
symlinks from these names to the unit filename. Note that not all unit types support such alias names, and this
setting is not supported for them. Specifically, mount, slice, swap, and automount units do not support
aliasing. I< Optional. Type list of uniline.  > 

=head2 WantedBy

This option may be used more than once, or a
space-separated list of unit names may be given. A symbolic
link is created in the .wants/ or
.requires/ directory of each of the
listed units when this unit is installed by systemctl
enable. This has the effect that a dependency of
type C<Wants> or C<Requires>
is added from the listed unit to the current unit. The primary
result is that the current unit will be started when the
listed unit is started. See the description of
C<Wants> and C<Requires> in
the [Unit] section for details.

WantedBy=foo.service in a service
bar.service is mostly equivalent to
Alias=foo.service.wants/bar.service in the
same file. In case of template units, systemctl
enable must be called with an instance name, and
this instance will be added to the
.wants/ or
.requires/ list of the listed unit. E.g.
WantedBy=getty.target in a service
getty@.service will result in
systemctl enable getty@tty2.service
creating a
getty.target.wants/getty@tty2.service
link to getty@.service.
I< Optional. Type list of uniline.  > 

=head2 Also

Additional units to install/deinstall when
this unit is installed/deinstalled. If the user requests
installation/deinstallation of a unit with this option
configured, systemctl enable and
systemctl disable will automatically
install/uninstall units listed in this option as well.

This option may be used more than once, or a
space-separated list of unit names may be
given. I< Optional. Type list of uniline.  > 

=head2 DefaultInstance

In template unit files, this specifies for
which instance the unit shall be enabled if the template is
enabled without any explicitly set instance. This option has
no effect in non-template unit files. The specified string
must be usable as instance identifier. I< Optional. Type uniline.  > 

=head2 RequiredBy

This option may be used more than once, or a
space-separated list of unit names may be given. A symbolic
link is created in the .wants/ or
.requires/ directory of each of the
listed units when this unit is installed by systemctl
enable. This has the effect that a dependency of
type C<Wants> or C<Requires>
is added from the listed unit to the current unit. The primary
result is that the current unit will be started when the
listed unit is started. See the description of
C<Wants> and C<Requires> in
the [Unit] section for details.

WantedBy=foo.service in a service
bar.service is mostly equivalent to
Alias=foo.service.wants/bar.service in the
same file. In case of template units, systemctl
enable must be called with an instance name, and
this instance will be added to the
.wants/ or
.requires/ list of the listed unit. E.g.
WantedBy=getty.target in a service
getty@.service will result in
systemctl enable getty@tty2.service
creating a
getty.target.wants/getty@tty2.service
link to getty@.service.
I< Optional. Type list of uniline.  > 

=head1 SEE ALSO

=over

=item *

L<cme>

=back

=cut

