Reboot to eMMC/NAND is missing from Estuary Skin

Noob here, so… Loaded CoreElec on thumb drive and install on 1st boot successful, but Reboot to eMMC/NAND is not available on the power options menu. Reviewed the /addons/skin.estuary/xml/DialogButtonMenu.xml file using ssh and the appropriate lines of code exist, but the option to reboot from eMMC/NAND does not present. I have not loaded an alternate skin. I installed the nightly build -
[CoreELEC-Amlogic-ng.arm-21.1.1-Omega_nightly_20241206-Generic.img.gz224.30MB2024-12-06 05:27:16] on my DUNE HD Premier 4K Pro.
There is another interesting issue where the internal SSD goes unrecognized as soon as I boot to coreelec from the thumbdrive and it has to be reformatted for the Dune Box to recognize it.

Should I try the stable build to see if this gets fixed?

A post was merged into an existing topic: Help, support CPM build

I tried all possible builds (stable and nightly), never saw the button appear. There must be some kind of device-specific criteria that does not work for our models.

Looking at /usr/share/kodi/addons/skin.estuary/xml/DialogButtonMenu.xml we can see that the button will only show up if there are a /dev/system or a /dev/userdata file.

                                        <item>                                                                                                                                                                                                
                                                <label>Reboot from eMMC/NAND</label>                                                                                                                                                          
                                                <onclick>System.ExecWait("/usr/sbin/rebootfromnand")</onclick>                                                                                                                                
                                                <onclick>Reset()</onclick>                                                                                                                                                                    
                                                <visible>System.PathExist("/dev/system") | System.PathExist("/dev/userdata")</visible>                                                                                                        
                                        </item>    

Apparently (latest nightly-ng here), no such files are present for me, so the condition is just plain wrong for my device or build (?).

CoreELEC:/usr/share/kodi # ls /dev/system 
ls: /dev/system: No such file or directory
CoreELEC:/usr/share/kodi # ls /dev/userdata
ls: /dev/userdata: No such file or directory

Until a proper fix is done, i copied the estuary skin to ~/.kodi/addons, removed the line, bumped the skin version to an arbitrary 5.0.0 in addon.xml and voilà, the button appears !

$ cp -R /usr/share/kodi/addons/skin.estuary/ ~/.kodi/addons/skin.estuary
$ # EDIT xml/DialogButtonMenu.xml
$ grep version addon.xml | grep name
<addon id="skin.estuary" version="5.0.0" name="Estuary" provider-name="phil65, Ichabod Fletchman">

Anyone knows how to do this properly ? (i.e. match the condition or fix the condition)

see Add support for reboot to internal with Android 11/12 Add path '/dev/… · CoreELEC/xbmc@af683af · GitHub
Fix for CE22 in next nightly.

Thanks. Will this eventually get backported into ce21-ng nighlies ?

I know it is FINAL on coreelec:ce_dev_cycle [CoreELEC Wiki] but there are still some nightlies coming out, what is your maintenance policy(e.g. only backport critical fixes ?) ?

Anyone who is missing this button run in ssh terminal after reboot

dmesg | paste

and post url you get. This will tell us which partitions are needed to check.

https://paste.coreelec.org/CoupleBriefed

(this is a Homatics Box 4k Plus on Android 12)

It does thave the /dev/super file so the aforementioned patch should work (but i’m on -ng which does not include the commit)

Ah, older kernel doesn’t show partitions :frowning:

You need to run ceemmc -vx, choose single mode but don’t actually do the install (cancel it). But you will see partitions listed. Copy and paste text from console here in post.

Tried, but no joy:

Starting CoreELEC eMMC installation tool...

System is not supported as no recovery is possible: sc2_s905x4_sei_smb_280_id5!

Anyway, /dev/super is present here so the commit should work (if the skin changes are backported):

CoreELEC:~ # ls -l /dev/super 
brw-rw----    1 root     disk      179,  22 Feb 27  2024 /dev/super
ls -l /dev/ | paste

https://paste.coreelec.org/InformTroop