We want for at least the pre-installed KDE software to be buildable on
the OS image with no hassle. Add some packages to the
packages-development.conf file.
Fixes#220
These aren't strictly speaking development tools. We don't want them to
disappear should we ever make the developer packages an optional overlay
or something.
Right now we don't have any swap, which can cause various memory
management complications, especially on systems with little physical
RAM.
Let's remedy this by using zram. This makes the system much less likely
to OOM in memory pressure situations, while being much faster than
disk-backed swap and avoiding the security issues of having RAM
contents on disk.
I chose some fairly aggressive settings based on research and testing:
- zram value of double the physical RAM, because it gets compressed
anyway and appears to have internal limits to avoid letting the
compressed memory completely crowd out the uncompressed memory.
- lz4 as the compression algorithm because it's super fast at the
expense of worse compression compared to zstd (the second best
option), but this is mitigated by having a large zram value.
- Tune the kernel parameters to make sense for swap being fast, since
the defaults assume slow swap which isn't true for us now.
The only thing we don't gain is hibernation support, but that can be
done later; these aren't mutually exclusive.
Resolves#84
we can't have the packages pipeline use the linux equipped file because
then it'd download the binary packages instead of building them, risking
BIC crashes and the like
unfrotunately we need a code copy for this because bootstrap must be
self contained. not too much to worry about since they are both in the
same repo so I expect people will grep for stuff (hopefully :D)
with ephemeral VMs the base image is old so we need to update the
mirrorlist during build.sh as well. also turn the copies around. now we
always pull copies out of /etc
Reduce system requirements to 3.5 GB to account for some of it being
taken up by the GPU and firmware. This should allow installing on
systems with 4 GB of physical RAM.
Fixes#198