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

mullvad: disable symlink for non-existing profile #651

Open
cboltz opened this issue Jan 19, 2025 · 5 comments
Open

mullvad: disable symlink for non-existing profile #651

cboltz opened this issue Jan 19, 2025 · 5 comments

Comments

@cboltz
Copy link

cboltz commented Jan 19, 2025

61939a3 creates a disable/mullvad symlink, but (at least on openSUSE Tumbleweed) this profile doesn't exist.

This results in a build failure:

[   20s] calling /usr/lib/rpm/brp-suse.d/brp-25-symlink
[   20s] ERROR: link target doesn't exist (neither in build root nor in installed system):
[   20s]   /etc/apparmor.d/disable/mullvad -> ../mullvad

Do you know where the nullvad profile comes from so that I can add that package to BuildRequires?

@curiosityseeker
Copy link
Contributor

Same problem on Arch Linux.

The PKGBUILD for mullvad-vpn-bin contains:

# Symlink apparmor profile to allow Electron sandbox to work
  install -d "$pkgdir/etc/apparmor.d"
  ln -s /opt/Mullvad\ VPN/resources/apparmor_mullvad "$pkgdir/etc/apparmor.d/mullvad"

@roddhjav
Copy link
Owner

The profile is from https://github.com/mullvad/mullvadvpn-app/blob/main/dist-assets/linux/apparmor_mullvad it was in conflict with the mullvad-gui profile in this project.

Is there an issue when the profile is not installed? I remember having tested this quickly before disabling it.

@cboltz
Copy link
Author

cboltz commented Jan 19, 2025

It isn't a problem on the AppArmor side (the broken disable/ symlink will be ignored), but the packaging checks catch the broken symlink and error out, which aborts the build.

For now, I adjusted the spec file to delete the disable/mullvad symlink.

@roddhjav
Copy link
Owner

roddhjav commented Jan 20, 2025

That is kind of problematic. I need to handle the conflict on apparmor.d's side, or it will fail if someone install Mullvad, but this will also cause an issue on packaging side... Do you know the proper way to fix this?

@cboltz
Copy link
Author

cboltz commented Jan 23, 2025

I'm afraid there's no sane fix on the packaging side (at least none that I'm aware of) since in nearly all cases (except this one) packaging a broken symlink is a bad idea and a sign for a packaging error.

For now, I have extended the spec file to exclude the disable/mullvad symlink. That fixes the build, but of course also means that this symlink isn't included in the package.

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

No branches or pull requests

3 participants