]>
Commit | Line | Data |
---|---|---|
b0143ab1 WB |
1 | package PVE::LXC::Setup::Fedora; |
2 | ||
3 | use strict; | |
4 | use warnings; | |
5 | ||
81a6ec3f | 6 | use PVE::LXC::Setup::CentOS; |
b0143ab1 | 7 | |
81a6ec3f | 8 | use base qw(PVE::LXC::Setup::CentOS); |
b0143ab1 WB |
9 | |
10 | sub new { | |
d721cb54 | 11 | my ($class, $conf, $rootdir, $os_release) = @_; |
b0143ab1 | 12 | |
d721cb54 | 13 | my $version = $os_release->{VERSION_ID}; |
bbb10538 | 14 | die "unsupported Fedora release '$version'\n" if !($version >= 22 && $version <= 34); |
b0143ab1 WB |
15 | |
16 | my $self = { conf => $conf, rootdir => $rootdir, version => $version }; | |
17 | ||
18 | $conf->{ostype} = "fedora"; | |
19 | ||
20 | return bless $self, $class; | |
21 | } | |
22 | ||
97e3e8e8 WB |
23 | sub template_fixup { |
24 | my ($self, $conf) = @_; | |
25 | $self->setup_securetty($conf); | |
26 | $self->ct_unlink('/etc/systemd/system/getty@.service'); | |
27 | } | |
28 | ||
29 | sub setup_init { | |
30 | my ($self, $conf) = @_; | |
31 | $self->setup_container_getty_service($conf); | |
32 | } | |
33 | ||
6751d98a SI |
34 | sub setup_network { |
35 | my ($self, $conf) = @_; | |
36 | ||
37 | # systemd-networkd is default in fedora-templates from upstream since | |
38 | # 25, however quite a few workarounds were posted in the forum, recommending | |
39 | # to start the (legacy) network.service via /etc/rc.local for fedora > 25. | |
40 | # /etc/sysconfig/network is not present in the templates for fedora > 25. | |
41 | # use its presence to decide, whether to configure the legacy config | |
42 | # additionally for 25, 26, 27. | |
43 | ||
44 | my $sysconfig_used = $self->ct_file_exists("/etc/sysconfig/network"); | |
45 | ||
46 | my $version = $self->{version}; | |
47 | ||
dd9b8264 TL |
48 | my $setup_sysconfig = ($version <= 24 || ($version <= 27 && $sysconfig_used)); |
49 | my $setup_systemd = ($version >= 25); | |
6751d98a SI |
50 | |
51 | $self->SUPER::setup_network($conf) if $setup_sysconfig; | |
52 | $self->SUPER::setup_systemd_networkd($conf) if $setup_systemd; | |
53 | } | |
b0143ab1 | 54 | 1; |