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

How to escape from the Kiosk mode #2112

Open
kobliha opened this issue Mar 4, 2025 · 8 comments
Open

How to escape from the Kiosk mode #2112

kobliha opened this issue Mar 4, 2025 · 8 comments
Labels
enhancement New feature or request long-term To evaluate again in the future

Comments

@kobliha
Copy link
Contributor

kobliha commented Mar 4, 2025

It seems that the browser does not really have a list of allowed URLs. I was able to escape the Kiosk mode quite easily. This also means that it could potentially load content from other sources, e.g., from the Internet. So, how to do it?

Download Agama logs

Image

Show all downloads

Image

Switch to Menu Bookmarks

Image

Create a new Bookmark

Image

Use it :)

Image

@kobliha
Copy link
Contributor Author

kobliha commented Mar 4, 2025

On the other hand, simply opening a terminal and entering "firefox" is faster :D
But I thought there is a good reason for a good Kiosk mode...

@cwickert
Copy link

cwickert commented Mar 4, 2025

I stumbled across the same problem. It's not only that you can escape in the very same way you describe here but simply use all keyboard shortcuts. Firefox'es kiosk mode does not allow disabling them. There are some extensions to do this or you can just use JavaScript to catch them. Last but not least you can completely ruin your installation by simply typing "CTRL + W". The window closes and there is no way to resume with all data entered.

To be fair, I'm not sure this is an Agama issue but more of a Firefox problem.

@dgdavid
Copy link
Contributor

dgdavid commented Mar 5, 2025

but simply use all keyboard shortcuts. Firefox'es kiosk mode does not allow disabling them.

Just a quick note: we should be careful with this. Users, specially those using keyboard, should be able to continue using the keyboard shortcuts. In principle, disabling them is not a good idea.

That said, and fully understanding your concerns about the kiosk mode, I believe improvements in this area are not a priority. Labeling this as a long term task.

@dgdavid dgdavid added enhancement New feature or request long-term To evaluate again in the future labels Mar 5, 2025
@kobliha
Copy link
Contributor Author

kobliha commented Mar 6, 2025

For the Ctrl+w issue (which is real), I'd propose to simply restart Firefox in case it's been closed by the user (exit code 0?). Well, maybe it's not THAT simple ;) but we could think about that.

@cwickert
Copy link

In my tests, restarting FF did not give me back all data I had entered before closing.

I fully agree with everything you guys have written: There are reasons to have (certain) keyboard shortcuts and it's certainly not a high prio issue. Nevertheless a small popup "Are you sure you want to leave the installer? The installation is not yet done" when closing the window or navigating elsewhere should be relatively easy to implement and cover 99% of the cases.

@dgdavid
Copy link
Contributor

dgdavid commented Mar 11, 2025

In my tests, restarting FF did not give me back all data I had entered before closing.

That's strange, because the interface only displays data sent by the backend. So, every accepted change should be restored. The only case where data would be lost is if the browser is closed without saving a specific form, in which case only the data entered in that form would be lost.

I fully agree with everything you guys have written: There are reasons to have (certain) keyboard shortcuts and it's certainly not a high prio issue.

I agree too with that statement in a slightly different way: we should have strong reasons for not keeping certain keyboard shortcuts.

Nevertheless a small popup "Are you sure you want to leave the installer? The installation is not yet done" when closing the window or navigating elsewhere should be relatively easy to implement and cover 99% of the cases.

Things sometimes seem easier than they really are. I’m not suggesting this is rocket science, but there are a few corner cases (some of which are mentioned at https://developer.mozilla.org/en-US/docs/Web/API/Window/beforeunload_event) that I’d like to consider before implementing a solution. In other words, I’d prefer to go for a well-thought-out solution rather than a simple workaround in a rush, which is why this has been labeled as a long-term task.

@cwickert
Copy link

I can confirm the installer stores the data – except for the root password.

  1. Start the installation, select a product, provide a root pw and click "Accept". At this point, the pw should be stored as the form got submitted.
  2. In the installation overview, quit FF with CTRL + w.
  3. Open FF again and go to http://localhost.
  4. The password you have to enter is not the one you configured but still the temporary root pw. I know this is because the new pw only gets written to disk during installation, but if you don't have the temporary root pw any longer, you are locked out at this point.

@dgdavid
Copy link
Contributor

dgdavid commented Mar 12, 2025

I can confirm the installer stores the data – except for the root password.

For your description below, the root password is stored too. In fact, it is exposed from no long ago, since it is a configuration the has introduced and can check at any time before proceeding with installation (see #2005 and #1999)

The problem is that you're confusing the root password of Agama live and the configured root password for the installed system. The root password of Agama cannot be changed through the web interface.

  1. Start the installation, select a product, provide a root pw and click "Accept". At this point, the pw should be stored as the form got submitted.
  2. In the installation overview, quit FF with CTRL + w.
  3. Open FF again and go to http://localhost.
  4. The password you have to enter is not the one you configured but still the temporary root pw.

As said, the login password is the root password for the Agama live medium.

I know this is because the new pw only gets written to disk during installation,

Exactly. There are two different things:

  • Agama and its surrounding configuration
  • The configuration for the installed system (all the things Agama let you choose)

but if you don't have the temporary root pw any longer, you are locked out at this point.

It's actually possible to know it (see https://agama-project.github.io/docs/devel/live_iso#the-access-password), but indeed this is something to improve. Opening the browser locally from the installation media should log in automatically. But this is a different. maybe related, issue to the one discussed here. I'll move to a new one.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request long-term To evaluate again in the future
Projects
None yet
Development

No branches or pull requests

3 participants