How to achieve clean slate with no packages (looking at you ppp!) in make menuconfig like owut --clean-slate does?
owut --clean-slate and make menuconfig are solving two very different problems, so they are not really comparable here.
owut works at the image/package retention level: --clean-slate simply discards the currently installed package set and rebuilds from an explicit package selection.
make menuconfig, instead, is part of the OpenWrt build system and starts from target/device defaults (DEFAULT_PACKAGES, profile defaults, dependencies, etc.). So packages like ppp may come back because they are part of the target definition or dependency graph, not because menuconfig is ārememberingā them.
In other words:
-
owut --clean-slate= āforget installed packagesā -
menuconfig= āresolve a full build configuration for this targetā
If you want a truly minimal image in the buildroot, the closest equivalent is usually:
-
removing packages explicitly (
PACKAGES="-ppp") -
overriding target defaults
-
or editing
DEFAULT_PACKAGES
rather than expecting menuconfig to behave like owut.
I want to avoid manually removing packages from the start.
How to properly do "overriding target default or editing DEFAULT_PACKAGES" for this case?
AI is telling me to add DEVICE_TYPE:=basic to target/linux/mediatek/filogic/target.mk - is this proper way?
At this point I'd wait for input from someone more experienced with the OpenWrt buildsystem internals before changing things like DEVICE_TYPE in target.mk.
ps: I would not trust AI-generated buildsystem advice blindly here.
ps: Unless you plan to go through trial and error.
Your AI (anti-intelligent) agent is hallucinating again.
Maybe you should take a look at `cat target/linux/mediatek/filogic/target.mkā
How would you then start with a clean slate?
You will have to deal with DEVICE_PACKAGES and the profile's DEFAULT settings.
Essentially DEVICE_TYPE=basic will get you the standard/default image configuration without any type-specific additions.
I am not an expert but I thought that owut --clean-slate produces the same image as what is pre-built on the downloads site without any user added packages for a particular target. Emphasis on "user added". The " default packages " being the packages defined for that particular target. If this is true, then no change to the make menuconfig is needed.
The build server has json files for each target, defining lots of stuff including the package list. You could use that as a reference for your build project.
That is the same list that is pre-filled under "Customize installed packages and/or first boot script" for a target on https://firmware-selector.openwrt.org .
Perhaps you and I are thinking that "default packages" mean different things. Others may have or will provide better feedback though.
In buildroot, I just start with a fresh config and go from there. About as "clean slate" as you can get.
$ rm .config
$ make defconfig
Totally agree. I wouldnāt go down that rabbit hole myself.
Add DEVICE_TYPE:=basic and you get it even cleaner. Remove packages from DEVICE_PACKAGES := and DEFAULT_PACKAGES += and even more so.
Why would bpir4 need hostapd and wpad and wifi firmwares if wifi is broken?
Maybe I should had changed the title as maybe owut --clean-slate does not do that as I believed.
This helped.