Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix FTBFS on Fedora and refresh RPM packaging #323

Merged
merged 3 commits into from
Feb 23, 2023

Conversation

Conan-Kudo
Copy link
Contributor

This pull request fixes Netplan to build on Fedora Linux and updates the RPM packaging to use the Meson build.

On RPM based distributions, pycoverage has the binary name "coverage-3".

Signed-off-by: Neal Gompa <[email protected]>
On most Linux distributions, systemd itself is installed in a
UsrMerged configuration. This means that there's one more directory
level to traverse for the symlink to work.

Signed-off-by: Neal Gompa <[email protected]>
This brings the packaging more in line with what is shipped in
Fedora. Due to the Meson requirement, the lowest version supported
now is CentOS/RHEL 9. More specifically, Red Hat Enterprise Linux
9.2 will ship with a new enough Meson for building Netplan.

Signed-off-by: Neal Gompa <[email protected]>
Copy link
Collaborator

@slyon slyon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you! I need to double check the systemd usrmerge situation in Debian/Ubuntu wrt. that meson.build change. Otherwise this LGTM!

src/meson.build Show resolved Hide resolved
Copy link
Collaborator

@slyon slyon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you very much for your repeated contributions @Conan-Kudo !

I think the main difference here is that systemd_generator_dir is different on different distros. This is a difference in systemd's (pkgconf) packaging.

# Ubuntu Lunar
root@ll:~# pkgconf --variable=systemdsystemgeneratordir systemd
/lib/systemd/system-generators

# Fedora 37
[root@f37 ~]# pkgconf --variable=systemdsystemgeneratordir systemd
/usr/lib/systemd/system-generators

Using an absolute target for the symbolic link sounds like a good idea! I'll fix that up after merging this PR.

@slyon slyon merged commit 8f9c914 into canonical:main Feb 23, 2023
@Conan-Kudo Conan-Kudo deleted the refresh-rpm-build branch February 23, 2023 14:40
@slyon
Copy link
Collaborator

slyon commented Feb 23, 2023

Ugh.. apparently meson is not willing to install a dangling symlink, so I needed to revert this ea5530c and we'll need come up with something better.

@Conan-Kudo
Copy link
Contributor Author

You might have to use a custom handler for installing symlinks instead of Meson's own thing. There's too many papercuts with Meson's install_symlink() method.

@slyon
Copy link
Collaborator

slyon commented Feb 23, 2023

Yeah... I'm currently investigating a few options/workarrounds, like custom_target or add_install_script, as described in mesonbuild/meson#1602

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.

3 participants