On 13.07.24 17:40, Luca Boccassi wrote:
On Thu, 11 Jul 2024 at 12:12, Lukas Märdian <sl...@debian.org> wrote:

On 11.07.24 11:13, Marco d'Itri wrote:
On Jul 11, Philip Hands <p...@hands.com> wrote:

I've only seen netplan mentioned in passing in this thread so far.
Because I believe that Netplan is the answer to a question that nobody
asked here.

It has all the disadvantages of switching to a new configuration format,
but then it limits you to the features that it actually implements from
each backend and you have an indirection layer that must be used when
interacting with the backend daemon.

Yes, it brings a new configuration format. So do systemd-networkd and 
NetworkManager.

Netplan's feature set is pretty comprehensive and certainly enough for a 
default installation,
see its reference: https://netplan.readthedocs.io/en/stable/netplan-yaml/

But it's not an indirection layer that MUST be used. Should the features of 
Netplan not be enough
for an advanced usecase, everybody is free to write configuration for the 
underlying backend directly.

Netplan will not interfere with that and go out of the way. Just don't write 
Netplan configuration
for a specific interface (or all of them) that you want to handle differently.

I appreciate the work you've done on Netplan and I am quite sure your
D-I MR should be merged, it looks ready to me. It's good to have this
support in the installer.

ACK. Cyril has been pretty busy with release management stuff, but we'll get 
there.

However, I do not think it should be the default. First of all, only
Ubuntu uses it, nobody else - as Simon says, we don't want the
defaults to be super-special things that nobody else uses. And then

Actually, I think this is an agrument FOR Netplan, not against it. Netplan is 
being used
by millions of users for 7+ years. Plenty of usecases have been tried and 
documented. It's
clearly not a "super-special thing that nodbody uses".

Whereas I'm not aware of a major Linux distro using systemd-networkd directly, 
Debian would be
singeling out itself. I see some of networkd's strengths with advanced users 
who want to dig deep
and have full control at minimal resource usage (e.g. Arch Linux). Also with 
lightweight container
usecases, where network config only needs minimal manipulation after deployment 
(if at all).

The RedHat ecosystem is all-in on NetworkManager. Debian and Ubuntu have 
(natually) been very close
to each other (e.g. package management) and together with its derivatives 
create the Debian ecosystem.
Going with Netplan by default would further harmonize the shared knowlege 
within our ecosystem.

again, not your fault in the slightest, but Canonical is known for
shifting its priorities every now and then - perfectly normal for a
for-profit company, but a bit worrying when one wants to pull all eggs
in that basket. And also for the minimal case, an additional layer of
indirection and set of dependencies, when there's an alternative that
requires none of that, is not the ideal solution.

We want to have a default choice that is easy to grok for everybody. Reading 
through this tread and
other places, this doesn't seem to be true for sd-networkd. That's one reason 
why people are driving
it through Netplan instead (e.g. Debian cloud & Ubuntu). But the minimal 
sd-networkd solution has its
merit for sure and should be considered when optimizing producs or usecases.

As the upstream maintainer of Netplan I've been building the Netplan community 
over the last couple
of years, trying to help everybody getting along with their contributions. And 
I'm seeing continuous
growth and adoption. It's not an "all egs in one basked" situation. We've had 
major corporations like
"Deutsche Telekom" dropping their internal [netplanner] tool in favor of 
upstream Netplan, after
they've contributed a new feature that they had been lacking in Netplan. Also 
Microsoft contributed
to improve integration with [Azure Linux], besides plenty of individual 
contributors that help with
feature develpment and bug fixes for every [Netplan release]. This happens 
without commercial
engegemnt of Canonical.

So I am quite sure that yes netplan should be supported in the
installer and your MR should be merged, but the new default for the
default, simple, wired case should be networkd, and for the
GUi/desktop case the default should continue to be NetworkManager.

We shouldn't have too many special cases, this will only increase 
fragmentation. But rather strive
to have single way to tell the common user "how to do networking on Debian". 
With Netplan, no
differentiation between Server/Desktop/Cloud or wired/wireless would be needed.

Cheers,
  Lukas


[netplanner]      https://github.com/telekom/netplanner/blob/main/README.md
[Azure Linux]     https://github.com/canonical/netplan/pull/445
[Netplan release] https://github.com/canonical/netplan/releases

Reply via email to