Skip to content

Adds userChrome.css to remove the "Chrome" from the UI in firefox#3343

Merged
ancorgs merged 7 commits intoagama-project:masterfrom
sfalken:firefox-profile
Mar 31, 2026
Merged

Adds userChrome.css to remove the "Chrome" from the UI in firefox#3343
ancorgs merged 7 commits intoagama-project:masterfrom
sfalken:firefox-profile

Conversation

@sfalken
Copy link
Copy Markdown
Contributor

@sfalken sfalken commented Mar 29, 2026

Problem

In agama, the browser still contains all of the "Chrome" such as the tab bar, close button, etc and makes for a messy UX

Solution

Add userChrome.css, and minor changes to usr.js.template, to remove the "Chrome" from the UI by default.

Testing

Test image, with changes enabled @ https://download.opensuse.org/repositories/home:/sfalken:/agamatest/images/iso/agama-installer.x86_64-19.0.0-openSUSE-Build10.2.iso

Disclosure:
ASSISTED-BY: Claude(claude-sonnet-4-6) for some lookup and research. This PR contains No LLM generated/written code

Shawn W Dunn and others added 3 commits March 27, 2026 12:26
Hide the UI when only one tab is present
Removes the close button
Enables userChrome.css
Open links in new windows
Hide bookmarks
Disable "Sponsored" content on new tabs
Disable firefox first-run welcome page
Disable popup blocker notification
Allow extlink protocol
Copy link
Copy Markdown
Contributor

@dgdavid dgdavid left a comment

Choose a reason for hiding this comment

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

Hi @sfalken,

First of all, thanks for this useful contribution!

I've reviewed it, and it looks great. It improves the ISO experience without breaking any critical browser features.

Just two small things:

  • I'd keep links opening in tabs rather than forcing new windows. It's better to see the “Agama” tab than a new window on top. Moreover, almost a year ago the team stopped using the kiosk mode and committed to easing user experience while being transparent that it is running in a browser.
  • As a side effect of displaying nothing when there is only one tab, users dont get feedback when downloading config or logs. That is not ideal :( One way to address this could be to always prompt the user for the download location. If I'm not wrong, this can be achieved by setting browser.download.useDownloadDir to false. If you also know how to force the download panel to show, that would be even better. Would you mind updating the PR to at least include the first?

Thanks in adavance!

Comment on lines +9 to +11
// Open links in new windows, rather than tabs
user_pref("browser.link.open_newwindow", 2);
user_pref("browser.link.open_newwindow.restriction", 1);
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

As said in #3343 (review), I'd drop this one.

@ancorgs
Copy link
Copy Markdown
Contributor

ancorgs commented Mar 30, 2026

[...] always prompt the user for the download location. [...]

In my opinion, that would indeed make a lot of sense. It makes sense in general and even more with the rest of the changes in this pull request.

@Conan-Kudo
Copy link
Copy Markdown

Moreover, almost a year ago the team stopped using the kiosk mode and committed to easing user experience while being transparent that it is running in a browser.

What does this even mean? The biggest complaint I had when trying out this ISO was that Agama provides no feedback when it is working or loading pages. This is in contrast to the Anaconda web UI, which presents a spinner indicating the installer is starting up while the pile of web pages loads.

@dgdavid
Copy link
Copy Markdown
Contributor

dgdavid commented Mar 30, 2026

Moreover, almost a year ago the team stopped using the kiosk mode and committed to easing user experience while being transparent that it is running in a browser.

What does this even mean?

It means that while we are open to tweaks in the ISO browser to provide a cleaner, less cluttered UI, we are not actively trying to hide the fact that the user is interacting with the web interface of the installer or that it is running in a browser. Thus, we avoid changes that could interfere with or hinder the normal interaction of a user with the browser. Nothing more than that.

The biggest complaint I had when trying out this ISO was that Agama provides no feedback when it is working or loading pages. This is in contrast to the Anaconda web UI, which presents a spinner indicating the installer is starting up while the pile of web pages loads.

IMHO, this has no relation to either the PR or the clarification I added about the browser tweaks scope we are open to accept. In any case, the Agama web interface has always provided active feedback, including spinners and skeletons, to make users aware that some action is in progress. Recent improvements have made it even better: pages and operations now load faster, some processes can run in the background without blocking user interaction, and, when needed, a blocking, informative overlay appears to let them know that something is in progress and they have to wait a little bit. Of course, the team will continue working to make the experience pleasant and smoother.

If you have a workflow where the Agama web interface sometimes gets stuck silently without giving feedback to users, we would really appreciate it if you could open a separate issue with clear steps to reproduce it. This will help us investigate and fix the problem more efficiently. Otherwise, it would be difficult to address it in a cross-PR comment.

Thanks!

@sfalken
Copy link
Copy Markdown
Contributor Author

sfalken commented Mar 30, 2026

New test image, with requested changes, for demonstration.

https://download.opensuse.org/repositories/home:/sfalken:/agamatest/images/iso/agama-installer.x86_64-19.0.0-openSUSE-Build11.1.iso

Fired it up in a VM, and it appears to do what was requested.

Copy link
Copy Markdown
Contributor

@ancorgs ancorgs left a comment

Choose a reason for hiding this comment

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

New test image, with requested changes, for demonstration.
Fired it up in a VM, and it appears to do what was requested.

I tested and it indeed works as requested. So I'm approving this.

Nevertheless, it would be even cooler if you can add a changelog entry to live/src/agama-installer.changes. If that's inconvenient, I could also merge and add the changelog later myself.

@sfalken
Copy link
Copy Markdown
Contributor Author

sfalken commented Mar 31, 2026

New test image, with requested changes, for demonstration.
Fired it up in a VM, and it appears to do what was requested.

I tested and it indeed works as requested. So I'm approving this.

Nevertheless, it would be even cooler if you can add a changelog entry to live/src/agama-installer.changes. If that's inconvenient, I could also merge and add the changelog later myself.

I'll take care of it. I completely forgot to update the changelog before PR'ing.

@ancorgs ancorgs merged commit 20f892a into agama-project:master Mar 31, 2026
2 checks passed
@dgdavid
Copy link
Copy Markdown
Contributor

dgdavid commented Mar 31, 2026

Thanks a lot @sfalken!

@imobachgs imobachgs mentioned this pull request Apr 14, 2026
imobachgs added a commit that referenced this pull request Apr 14, 2026
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