# Offline Kiosk Mode on Linux

**URL:** <https://forum.makecode.com/t/offline-kiosk-mode-on-linux/28435>\
**Category:** Arcade\
**Created:** [April 25, 2024, 11:08pm UTC](https://forum.makecode.com/t/offline-kiosk-mode-on-linux/28435 "2024-04-25T23:08:28Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![michaelcaplan](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/michaelcaplan/32/14780_2.png) [@michaelcaplan](https://forum.makecode.com/u/michaelcaplan)\
**Post date:** [April 25, 2024, 11:08pm UTC](https://forum.makecode.com/t/offline-kiosk-mode-on-linux/28435/1 "2024-04-25T23:08:28Z")

</div>

Hi There,

I’m looking to build an Arcade cabinet to showcase student’s games. To build the cabinet, I am using a repurposed laptop running Ubutu Linux. The Arcade Kiosk browser app is fantastic for this project, with one draw back:

I’d like to set up the cabinet in an environment that does not have internet access.

I understand there is a method to compile the arcade kiosk wrapper for the RPI 3 that can then execute ELF files saved locally – no internet needed. The downside to this is that I’d prefer to stick with the hardware I have, if at all possible.

Another potential solution that I’m just starting to look at is running an retro gaming emulation distro like Batocera and installing McAirpos for launching Arcade ELF files. Although I might be wrong about this possible pathway: it appears that you are still stuck running on an ARM device (which my laptop is not).

Are there other pathways that might get me to my desired end goal?

Thanks!

Mike

---

<div class="post-metadata">

**Author:** ![richard](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/richard/32/5417_2.png) [@richard](https://forum.makecode.com/u/richard)\
**Post date:** [April 25, 2024, 11:15pm UTC](https://forum.makecode.com/t/offline-kiosk-mode-on-linux/28435/2 "2024-04-25T23:15:13Z")

</div>

I don’t think we currently support this. @eanders is that correct?

We probably should, though. @michaelcaplan when you say setting up without internet access, do you mean you’ll have no internet access through the whole process or that you’ll be installing the cabinet somewhere without internet access? If it’s the latter, we could maybe add serviceworker support so that the kiosk gets cached after you visit it once in the browser.

---

<div class="post-metadata">

**Author:** ![michaelcaplan](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/michaelcaplan/32/14780_2.png) [@michaelcaplan](https://forum.makecode.com/u/michaelcaplan)\
**Post date:** [April 25, 2024, 11:38pm UTC](https://forum.makecode.com/t/offline-kiosk-mode-on-linux/28435/3 "2024-04-25T23:38:41Z")

</div>

@richard

It is the latter. Setup will be in a controlled Internet enabled environment. We will be then exhibiting students work in several locations that may or may not have accessible Internet

ServiceWorkers seems perfect for this use case.

I’m trying to think of other offline options too. Was wondering about an Electron wrapper. Not as slick as implementing native offline support through serviceWorkers, mind you.

Best

Mike

---

<div class="post-metadata">

**Author:** ![michaelcaplan](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/michaelcaplan/32/14780_2.png) [@michaelcaplan](https://forum.makecode.com/u/michaelcaplan)\
**Post date:** [April 29, 2024, 6:13pm UTC](https://forum.makecode.com/t/offline-kiosk-mode-on-linux/28435/4 "2024-04-29T18:13:58Z")

</div>

To keep this conversation going. I am also wondering about running ELF files under QEMU. I see that they have native support for running Makcode Microbit HEX binaries in there emulator. Gonna try to log some time in the next week to check out ARM support and if I can get ELF binararies running locally that way.

---

<div class="post-metadata">

**Author:** ![Vegz78](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/vegz78/32/1201_2.png) [@Vegz78](https://forum.makecode.com/u/Vegz78)\
**Post date:** [April 30, 2024, 4:07am UTC](https://forum.makecode.com/t/offline-kiosk-mode-on-linux/28435/5 "2024-04-30T04:07:05Z")

</div>

Nice idea with QEMU, @michaelcaplan! Please keep us posted about your progress!

---

<div class="post-metadata">

**Author:** ![TimothyBastiaan](https://avatars.discourse-cdn.com/v4/letter/t/a183cd/32.png) [@TimothyBastiaan](https://forum.makecode.com/u/TimothyBastiaan)\
**Post date:** [May 27, 2024, 6:47pm UTC](https://forum.makecode.com/t/offline-kiosk-mode-on-linux/28435/6 "2024-05-27T18:47:55Z")

</div>

is there any news about the serviceworker support on kiosk?

---

<div class="post-metadata">

**Author:** ![michaelcaplan](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/michaelcaplan/32/14780_2.png) [@michaelcaplan](https://forum.makecode.com/u/michaelcaplan)\
**Post date:** [May 28, 2024, 5:57pm UTC](https://forum.makecode.com/t/offline-kiosk-mode-on-linux/28435/7 "2024-05-28T17:57:04Z")

</div>

@richard would the ideal pathway forward on this be to open a feature request in the microsoft/pxt or microsoft/pxt-arcade github repos? If so, I can do so (just unclear which repo is the right one).

---

<div class="post-metadata">

**Author:** ![richard](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/richard/32/5417_2.png) [@richard](https://forum.makecode.com/u/richard)\
**Post date:** [May 29, 2024, 4:51pm UTC](https://forum.makecode.com/t/offline-kiosk-mode-on-linux/28435/8 "2024-05-29T16:51:05Z")

</div>

@michaelcaplan pxt-arcade is the right repo!

sorry, no progress on this yet. i’ve been swamped with other work, but i’ll try and pick this up when i have a free moment.
