Re: Bug#1012707: /etc/network/interfaces: only source configuration files using with '*.conf' / use 'source /etc/network/interfaces.d/*.conf' instead of 'source /etc/network/interfaces.d/*'

2022-07-12 Thread Ben Hutchings
On Tue, 2022-06-14 at 22:52 +0200, Santiago Ruano Rincón wrote:
> El 12/06/22 a las 14:13, Patrick Schleizer escribió:
> > Package: ifupdown
> > Severity: normal
> > 
> > Dear maintainer,
> > 
> > in file /etc/network/interfaces ...
> > 
> > Could you please consider instead of setting the default:
> > 
> > source /etc/network/interfaces.d/*
> > 
> > change suggestion:
> > 
> > source /etc/network/interfaces.d/*.conf
> > 
> > Reason:
> > 
> > When
> > 
> > - text editor (such as kate) create backup files (such as
> > /etc/network/interfaces.d/50_user~ with the tilde at the end)
> > 
> > - local packages by system administrator or Debian derivatives place
> > configuration drop-in snippets in /etc/network/interfaces.d/ folder,
> > 
> > then on upgrades then redundant files might end up in that folder such
> > as those with file extensions '.dpkg-old' or '.dpkg-dist'.
> > 
> > When ifupdown is restarted, an interface is likely to be duplicated
> > leading to ifupdown failure, resulting in a broken network connection.

Is this not what the "source-directory" directive exists for?

It is a bit puzzling that this was added and then not used...

> > 
> > By parsing only configuration files such as with the `*.conf` file
> > extension issues with parsing unexpected files created by editors
> > (backup files) or dpkg are avoided.
> 
> Thanks for your report. I think it makes sens. But for the moment, I am
> pushing it to a separate branch. If I am not wrong, the debian-installer
> installs some files in /etc/network/interfaces.d/, so there must be some
> coordination to avoid issues in future installs.
> 
> Debian Installer Team: it is OK from your side to make the change
> described above?

I grepped the source repositories of d-i packages and found 2 uses of
interfaces.d:

- netboot-assistant has an example command that creates
"/etc/network/interfaces.d/static":
https://salsa.debian.org/installer-team/netboot-assistant/-/blob/master/README.installbox#L62

- netcfg creates /etc/network/interfaces itself, with the wildcard
that's being reported as a bug:
https://salsa.debian.org/installer-team/netcfg/-/blob/master/write_interface.c#L29

So netcfg would probably also have to be changed, whether you decide to
go with *.conf or source-directory.

Ben.

-- 
Ben Hutchings
friends: People who know you well, but like you anyway.


signature.asc
Description: This is a digitally signed message part


Re: Bug#1012707: /etc/network/interfaces: only source configuration files using with '*.conf' / use 'source /etc/network/interfaces.d/*.conf' instead of 'source /etc/network/interfaces.d/*'

2022-06-14 Thread Santiago Ruano Rincón
El 12/06/22 a las 14:13, Patrick Schleizer escribió:
> Package: ifupdown
> Severity: normal
> 
> Dear maintainer,
> 
> in file /etc/network/interfaces ...
> 
> Could you please consider instead of setting the default:
> 
> source /etc/network/interfaces.d/*
> 
> change suggestion:
> 
> source /etc/network/interfaces.d/*.conf
> 
> Reason:
> 
> When
> 
> - text editor (such as kate) create backup files (such as
> /etc/network/interfaces.d/50_user~ with the tilde at the end)
> 
> - local packages by system administrator or Debian derivatives place
> configuration drop-in snippets in /etc/network/interfaces.d/ folder,
> 
> then on upgrades then redundant files might end up in that folder such
> as those with file extensions '.dpkg-old' or '.dpkg-dist'.
> 
> When ifupdown is restarted, an interface is likely to be duplicated
> leading to ifupdown failure, resulting in a broken network connection.
> 
> By parsing only configuration files such as with the `*.conf` file
> extension issues with parsing unexpected files created by editors
> (backup files) or dpkg are avoided.

Thanks for your report. I think it makes sens. But for the moment, I am
pushing it to a separate branch. If I am not wrong, the debian-installer
installs some files in /etc/network/interfaces.d/, so there must be some
coordination to avoid issues in future installs.

Debian Installer Team: it is OK from your side to make the change
described above?

Cheers,

 -- Santiago


signature.asc
Description: PGP signature