Skip to content

New profile: mullvad-browser #5887

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

Merged
merged 1 commit into from
Jul 22, 2023
Merged

New profile: mullvad-browser #5887

merged 1 commit into from
Jul 22, 2023

Conversation

glitsj16
Copy link
Collaborator

@glitsj16 glitsj16 commented Jul 8, 2023

Add new profile for mullvad-browser. Requested here and suggested here.

Copy link
Collaborator

@kmk3 kmk3 left a comment

Choose a reason for hiding this comment

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

The only config path used is ~/.config/mullvad-browser-flags.conf.

Where is the user profile stored? Is there no user profile directory?

@glitsj16
Copy link
Collaborator Author

@kmk3

The only config path used is ~/.config/mullvad-browser-flags.conf.
Where is the user profile stored? Is there no user profile directory?

Mullvad Browser stores everything under one directory, including its cache and profile dir. The official download installs under ${HOME}/.local/share/mullvad-browser. The packaged versions in the AUR move everything into /opt/mullvad-browser. Both those paths are whitelisted. I didn't want to explicitly blacklist /opt/mullvad-browser in disable-programs.inc, nothing from /opt is in there. Do you think we should?

@kmk3
Copy link
Collaborator

kmk3 commented Jul 10, 2023

The only config path used is ~/.config/mullvad-browser-flags.conf. Where
is the user profile stored? Is there no user profile directory?

Mullvad Browser stores everything under one directory, including its cache
and profile dir. The official
download
installs under
${HOME}/.local/share/mullvad-browser. The packaged versions in the
AUR
move everything into /opt/mullvad-browser.

Are you sure?

From https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=mullvad-browser-bin&id=4aabf2f8085b4712b9cf32eec09a9040f2184ef1#n47:

# copy files from archive
install -dm0755 "$pkgdir/opt/mullvad-browser/"
cp --archive Browser/* "$pkgdir/opt/mullvad-browser/"

# ask it to create profiles in ~
touch "$pkgdir/opt/mullvad-browser/system-install"

Also, how would it handle multiple users in that case? Does it create a
separate /home directory in /opt? Does the install only work for a single
user? Putting user data outside of the user home seems like a bad idea in any
case.

Both those paths are whitelisted.

I'm not sure if you're only talking about /opt, but currently only the .conf
file is whitelisted in ${HOME}; there is no data directory.

I didn't want to explicitly blacklist
/opt/mullvad-browser in disable-programs.inc, nothing from /opt is in there.
Do you think we should?

Well, disable-programs is mostly just configuration/data paths, but if it
indeed can put user data in /opt then blacklisting makes sense to me.

@glitsj16
Copy link
Collaborator Author

@kmk3 Good questions. I'll build those AUR packages again tomorrow and do more extensive testing guided by your remarks/questions. Thanks!

@glitsj16
Copy link
Collaborator Author

@kmk3 UPDATE: there were indeed very significant changes to installation paths and user settings locations compared to when I initially created my version of mullvad-browser.profile! Thanks for (gently) pushing me to review this situation. I've tried to be as verbose in the newly introduced comments as I thought fit to clearly state the differences for both a system-wide installation under /opt and a local installation under ${HOME}. Feel free to make suggestions.

Some additional remarks for reviewers. My assumption of an install under ${HOME}/.local/share/mullvad-browser is based on what we do in torbrowser-launcher.profile and is tested intensively (it's where I have my copy of mullvad-browser installed since it became available). The blacklisting of ${HOME}/UpdateInfo in disable-programs.inc without noblacklisting that path anywhere else needs some clarification. That specific location is only used when installing under /opt. More correctly, when not installing under ${HOME}. Upgrading such a mullvad-browser installation from within the browser will not work anyway - obviously due to the user not having privileges to install files under /opt.

Nothing of the above is set in stone, so feel free to make suggestions!

@glitsj16
Copy link
Collaborator Author

@kmk3 @rusty-snake If you find the time, can you have another look at this? I think it's okay now. Same for #5886.

Homepage: https://mullvad.net/en/download/browser/linux

mullvad-browser: don't use restrict-namespaces

mullvad-browser: cover both installation paths

Suggested in review by @kmk3.
@glitsj16 glitsj16 merged commit e4913eb into netblue30:master Jul 22, 2023
@glitsj16 glitsj16 deleted the mb branch July 22, 2023 12:38
@kmk3 kmk3 moved this to Done (on RELNOTES) in Release 0.9.74 Mar 24, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Done (on RELNOTES)
Development

Successfully merging this pull request may close these issues.

2 participants