Skip to content

Synced /var/spool/mail entry with Factory filesystem package. - #1392

Merged
FilippoBonazziSUSE merged 1 commit into
rpm-software-management:opensusefrom
sudomibo:opensuse
Sep 9, 2025
Merged

Synced /var/spool/mail entry with Factory filesystem package.#1392
FilippoBonazziSUSE merged 1 commit into
rpm-software-management:opensusefrom
sudomibo:opensuse

Conversation

@sudomibo

@sudomibo sudomibo commented Sep 5, 2025

Copy link
Copy Markdown

It appears that the list in FilesCheck.py is no longer in sync with filesystem package of openSUSE Factory.

In particular, error standard-dir-owned-by-package is emitted on path /var/spool/mail that is not provided by the filesystem package (see https://build.opensuse.org/projects/openSUSE:Factory/packages/filesystem/files/directory.list?expand=1), and is instead owned by optional packages like postfix, sendmail, exim, etc. (see https://bugzilla.opensuse.org/show_bug.cgi?id=1179574).

New packages that provide smtp_daemon would be expected to own that path. If I see correctly, this is different topic from the topic of allowlisting the typical 1777 permissions that goes through a separate security review process and has a different check in rpmlint.

Therefore, I suggest the attached change. Thank you in advance for your consideration.

@danigm

danigm commented Sep 8, 2025

Copy link
Copy Markdown
Member

If it's not an standard dir anymore and this is merged, this change should also be sent to main branch.

@mgerstner

Copy link
Copy Markdown
Contributor

I'm not completely sure about this change. Other MTAs like postfix do currently package /var/spool/mail and just live with the warning. I'm not entirely sure about the change to the filesystem package, maybe it was not properly completed?

/var/spool/mail kind of is a standard directory, however. Maybe there is a conflict with the permissions package, because currently all MTAs invoke permctl to apply the 1777 permissions on the directory.

Before we change more things we should try to fully understand the current situation, maybe also talk to the people who made this change in the filesystem package. Ludwig Nussel, who initiated it, is no longer in the company, though.

@sudomibo

sudomibo commented Sep 8, 2025

Copy link
Copy Markdown
Author

As far as I can see, packages like postfix use rpmlintrc to ignore the mentioned error on OBS. In case that would be a standard way to go with packages that aim to provide smtp_daemon, this PR can be rejected.

@mgerstner

Copy link
Copy Markdown
Contributor

I really don't fully understand what the aim of bsc#1179574 was. They dropped the directory from the filesystem package. Then there was the idea to create a dedicated package for the directory that all MTA packages should Require:. This was not followed through, however, because every MTA already packaged the directory and invoked %set_permissions on it.

So on packaging level the ownership of this directory was de-centralized. From an rpmlint POV it is still a standard directory, however, which is supposed to be centralized, obviously.

The FHS standard lists /var/mail (optional) and /var/spool, but not /var/spool/mail.

The FilesCheck doesn't even talk about the FHS, though, but about entries kept in sync with the filesystem package. In this light I guess this PR# is correct.

@mgerstner

Copy link
Copy Markdown
Contributor

We discussed it in the team and nobody has any objections. As the configuration file says it should be kept in sync with the filesystem package and this is what we do with this PR#. I wouldn't want to spread this change also onto the main branch, however, since we don't know what the requirements for other distributions are.

@FilippoBonazziSUSE
FilippoBonazziSUSE merged commit 1bb9656 into rpm-software-management:opensuse Sep 9, 2025
11 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants