openwrt / firmware-selector-openwrt-org

The OpenWrt Firmware Selector! Quickly find firmware for your device and build custom ones online!
Creative Commons Zero v1.0 Universal
31 stars 19 forks source link

Usability suggestion: Installed Packages customization makes it easy to create a brick-able build #47

Open itsthejb opened 2 days ago

itsthejb commented 2 days ago

Hi everyone,

First of all, thanks for the great work on this project and everything associated! I recently tried out some more advanced functionality (firmware selector customized builds), and managed to shoot myself in the foot rather easily. However, it seems like this could be inspiration for a user-friendliness improvement?

Steps

Expected behaviour

Actual behaviour

Suggested improvements

It seems this problem could be fixed in a simply (adjusting the UI) or more deeply (build validation). Probably it's enough to just adjust the UI:

Overall I understand that this is advanced functionality. However, mistakes can happen and it seems like this can protected against with some minor changes. I would create a patch myself, but I'm afraid web dev is not my speciality 🙃

Thanks in advance!

Related forum post: https://forum.openwrt.org/t/solved-bricked-fritz-box-7530-customized-sysupgrade-missing-critical-packages/211748

mwarning commented 1 day ago

Nice write up. But @aparcar has to decide on this. We could also add the device packages by default in the background or juts make them non-removeable.

mwarning commented 17 hours ago

@aparcar doesn't mind on how this is improved. @itsthejb the device_packages seem to also contain a bunch of optional packages that are definitely not essential. Like ppp* or opkg. So it is impossible to determine if a package is essential...

itsthejb commented 6 hours ago

Hey @mwarning,

Well it doesn't have to be bullet-proof; it could be as simple as just having the two input fields, one pre-filled with the "standard packages", and another empty one to add "additional packages". I imagine that most of the time people will only want to add packages to the second box, and for those that want to touch the standard packages, that's also available

That would be the MVP to increase the difficulty to accidentally removing a critical package