Could you link to some set of instruction on how to go on downloading the sources, configuring them to some kind of default configuration for some device and then building a flashable image?
After I get started on this, I'll come back for more questions and answers.
The ideal host for this is an Ubuntu system, I guess. Are there any other equally good candidates? Would any BSD do? Or is linux a better choice because LEDE is a linux?
Well. Now that I have checked out the code, how do I apply a default configuration for a certain device? I assume that if I were to build the code for multiple devices, I'd need to do it a device at a time.
It seems like every time I change something in the kernel configuration, like for example when I want to have another module as a packge, the kernel version changes:
[*] Select all target specific packages by default [*] Select all kernel module packages by default [*] Select all userspace packages by default
selected, and that did not include any filesystem modules. So had to go on selecting these separately. Which brought me to my current problem.
Is there a way to have everything compiled as packages, and a minimal image, onto which one can install anything at will?
Edit: I simply wanted the default package for TP-Link Archer C7 v2 with support for UTF-8 in busybox and all the OpenvSwitch packages available. In Chaos Calmer the OpenvSwitch was uninstallable and there was no UTF-8 support.
There are packages that are not included in the ALL set
But those packages are included by a subset, for example, SOUND
The Radius 2 server fails to compile (or the libs)
Gstreamer (PACKAGE_gst1-plugins-base) is required by CONFIG_PACKAGE_libdmapsharing, even though this is not visible in the menu (i. e. the help screen of gstreamer1-plugins-base). I first attempted to enable "almost everything" and had multiple problems compiling gst1-plugins-base, so I decided to leave it out. But it was quite hard when it kept coming along even though the menu said it wasn't supposed to. Finally, using grep on the feeds directory I found the culprit.
These are all related to v17.01.2 and could be fixed in the HEAD. Also, I am not sure which ones of these are worth a bug report. Maybe I could search the issue tracker after I'm done with building an image for my C7.
In general it makes no sense to build all packages, the only thing that needs to be tailored to your build is kmods.
Also the CONFIG_ALL and CONFIG_ALL_KMODS options have no effect on existing configurations, since they only affect the choice state.
I suggest to only enable CONFIG_ALL_KMODS using a command like: sed -i -e '/# CONFIG_PACKAGE_kmod-.* is not set/d' .config && echo 'CONFIG_ALL_KMODS=y' >> .config && make defconfig
Finally when invoking make, use make ... IGNORE_ERRORS="n m" to skip broken packages which are not set to builtin.
I can't understand the (!ALL || AUDIO_SUPPORT) part. I mean, you need plugins-base when plugins-good is selected, AND
a) AUDIO_SUPPORT is enabled, or
b) ALL is disabled, even if AUDIO_SUPPORT is still disabled
That is, having ALLenabled is not enough if AUDIO_SUPPORT is disabled, but somehow having ALLdisabled is in itself enough to request plugins-base with plugins-good. Then, if I enable ALL, I will not get plugins-base with plugins-good.
I mean, how can enabling ALL work to disable packages?
If I individually select plugins-good, I will get its prerequisite, which is plugins-base, based on the !ALL criteria. Then I enable ALL and suddenly plugins-good will no more get its prerequisite.
checking for XML::Parser... configure: error: XML::Parser perl module is required for intltool
I do have that selected.
<M> perl-xml-parser.......................................... Perl XML Parser
It's like the intltool requires it, but the menuconfig doesn't know that intltool requires it. And even though I have it selected, the build process does not find it.
I do not intend to just complain. I wonder if there is something I can do to help with these.
Or does it mean that my build system needs to have the package?
Checking out files from the git repository... Cloning into 'libevhtp-1.1.6'... remote: Repository not found.
I wonder if I should report this somewhere. This is the v17.01.2 release. Is it possible or necessary to bump the version, or is the repository moved or temporarily missing?
Another one:
Checking out files from the git repository... Cloning into 'libevhtp-1.1.6'... remote: Repository not found. fatal: Authentication failed for 'https://github.com/ellzey/libevhtp.git/'
I have libevhtp deselected in menuconfig, but for some reason it is still being built.
Later found out that net/seafile-server requires it.