Issues installing Brave browser on Fedora Atomic Desktops (Silverblue)

hey, sorry for reaching out here, I hope it’s okay haha
so… I ran into some errors with one browser, which I kinda need to be resolved soon, and I’ve reached to community of that browser, but they haven’t figured it out yet. So I thought perhaps you could know, and I messaged you about it on matrix, if you’re okay with checking it out. I don’t mean to rush you though, just letting you know here in case you weren’t notified, I know matrix sometimes has issues with notifications

2 Likes

Just ask here? Or is that something private

Also checkout

GitHub - boredsquirrel/browserscript-fedora-atomic: A simple interactive script to install Brave (stable, beta, nightly) or Vivaldi on Fedora Atomic

well not really private, but it did seem out of topic and I didn’t wanna make another post, but anyway. :smiling_face_with_tear:

I saw your script, but I decided to follow Brave’s official guide (since they do have one for Silverblue) , which is:
run0 curl -fsSLo /etc/yum.repos.d/brave-browser.repo https://brave-browser-rpm-release.s3.brave.com/brave-browser.repo
and then
run0 rpm-ostree install brave-browser
then restart the system… but for some reason it didn’t seem to work, Brave is missing in app library and cannot be found through GNOME’s search thing. I don’t see it in the list of layered packages from rpm-ostree status either.

I made sure to update the system before this.
the commands also gave a bit of a weird output. They both ask for a root password, but after entering it, they show a dark red line for a second, and then there’s no output (which is normally there with rpm-ostree), and I’m prompted for a new command by the terminal. Perhaps the dark red line is an indication of some error? lol

although, when running rpm-ostree upgrade, I can see the Brave repo in the middle of other repos:
rpm-md repo 'brave-browser' (cached); generated: 2025-01-29T17:3854Z solvables: 331

I’m thinking, perhaps it was trying to install it, but failed or didn’t complete it, and now I have leftover files from that somewhere? I don’t know… I’m a tech newbie, to be honest.

I would prefer to avoid the the flatpak version of Brave, I know there are some workarounds to minimize the security loss, but I don’t know if it really covers everything, so I don’t feel like doing it :smiling_face_with_tear:

should also note that someone tried replicating this bug in a vm and they couldn’t, everything installed fine for them.

rpm-ostree needs no run0 or sudo when your user is in the wheel group

id

Run it without run0

run0 shows that red background that is correct. It is a replacement for sudo and su

# enter a root shell
run0

# execute a command as root
run0 cat /etc/shadow

# execute a command as another user
run0 -u username command

The repo was added so its contents will be updated (metadata)

Check rpm-ostree status to see if the package is actually installed

Btw the script in my repo is using official brave repos. Only really needed if you use beta and nightly though as those are kinda unintuitive and undocumented. Same for Vivaldi (interesting browser but I dont use it) which uses a method that doesnt work at all in atomic desktops

Basically you install the RPM, it writes the repo itself. But you would then need to remove the local .rpm override and install the repo package

well, I just used the default user, created after the installation.

thanks, I’ll try running that in a few minutes when I get back to my laptop.

it wasn’t a red background, just one line, but yeah. (I don’t mean the app header line, I mean a line of intact square symbols, which appears right where command prompt is, for one second).

I already checked rpm-ostree status, Brave wasn’t there. But I’ll check again after trying without run0.

undocumented? :thinking: I can see instructions for beta and nightly on their website, even for Silverblue. Perhaps they updated it since last time you checked. I know they updated the Workstation guide for dnf5, too.

1 Like

the first command without run0 said curl: (23) client returned ERROR on write of 190 bytes, so I ran it with run0, but the second one I ran without it, and it seems to have worked, Brave is now installed. Thank you

There likely was some failure and run0 has some issues outputting errors to the normal shell when it exits.

I also had an SELinux error using run0 ostree admin pin 0 so this might have been that.

I recommend installing setroubleshoot

rpm-ostree update --install setroubleshoot

as that might have been an SELinux denial.

rpm-ostree is “polkit-aware” (it does not require a password for some, but does for some other actions, and users), unlike ostree which you need to run as root.

yes of course, you are trying to write a file to a protected location.

It is not recommended to download files as root, so (little flex) my script is still way better than their instructions.

in short

# download script and signature, without root
curl -LsS$https://brave-browser-rpm-release.s3.brave.com/brave-browser.repo -o /tmp/brave-browser-beta.repo
curl -LsS https://brave-browser-rpm-release.s3.brave.com/brave-core.asc -o /tmp/brave-core.asc || {

# move the files, locally with root
run0 sh -c '
        mv /tmp/brave-browser.repo /etc/yum.repos.d/brave-browser.repo
        mv /tmp/brave-core.asc /etc/pki/rpm-gpg/brave-core.asc
'

# secure the repo files with UNIX permissions and SELinux labels
run0 sh -c '
   chown root:root /etc/yum.repos.d/* && \
   chmod 744 /etc/yum.repos.d/* && \
   chcon -R system_u:object_r:system_conf_t:s0 /etc/yum.repos.d/
'

# install the package, without root
rpm-ostree install brave-browser-beta

that looks like instructions for a beta install though :thinking:
so… from what I understand, I should just run their commands, removing run0 from the second input, right?

No

  1. Download files from the internet without root
  2. Move them with root
  3. Use rpm-ostree without root, so no sudo or run0