Some GUI applications such as Dolphin GIT integration ask for SSH
password during use. This let's those applications know
what our GUI tool for it is.
If this is not set, those applications may fail and expect the
user to enter the SSH key through a terminal prompt, which
is not available in GUI applications.
nvidia-utils from Arch ships a blanket rule that disables user session freezing on suspend. While this might be necessary on NVIDIA hardware, it's actively warned against by systemd and hence should not be set for everyone else.
For people like me with displays that take a few seconds to show the boot menu (mode switch?) leaving little to no time for us to react if we want to, say, select a different entry or edit kernel params.
Manipulating photos/files on an Apple iOS/iPadOS device over USB requires
these tools. They are about 6.3MB installed, but the user experience of being
able to plug in your iPhone, and see and copy your photos straight over to
your PC, is really nice.
In conjunction with the default SwapUsedLimit value of 90%, we almost
never actually OOM, and instead freeze.
Reduce the time-based condition from 30 seconds to 10 so we OOM faster
in a true swap exhaustion situation. 30 seconds is so long the user may
force-restart the system, risking damage to the disk.
- Cap default log file space usage at 500 MB, down from 4 GB (no normal
person cares about having this many logs more than their own files)
- Don't log spammy debug and info messages in Qt software by default
- Wrap long lines in `journalctl` output so you can actually see them,
and copy them for debugging elsewhere
Right now we use very aggressive settings, over-provisioning zram to
200% of the physical RAM in an attempt to effectively double the memory.
Unfortunately this doesn't work for a few reasons:
1. Not all memory is compressible.
2. Not preserving enough uncompressed working memory causes frezes and
stalls even when zram doesn't look full.
3. Such a large zram size means systemd's OOM killer never thinks the
system is close to running of memory even when it's frozen due to 1
and 2.
Helps with #552
Ultimately we need a facility to download all the others as needed. For
now at least include en_us, same as we did for Tesseract which also
requires at least one language package to work.
Resolves#385
We don't need both hunspell and aspell; both do the same thing. Hunspell
appears to be much more actively maintained and also more widely used
(Firefox and LibreOffice, for example), so let's keep it and ditch
aspell.
This is only for Hebrew, and we generally aren't including
non-English single-language-specific packages right now. For example we
don't include grammalecte which is only for French, or voikko for
Finnish.
This will be a part of the "how do I download missing components?"
story later.
Found while auditing our dependencies. We generally follow the rule to
pre-install optional dependencies (where it makes sense), so include
these.
They're all tiny, so this increases the image by only a few megabytes.
Everything in here is a runtime dependency of KDE software, a hardware
enablement package, or a discretionary userspace CLI tool. Move it all
to the files for those things.
We default to lz4 which is mega fast but doesn't have the best
compression. We can get closer to having the best of both worlds by
telling the zram config to fall back to zstd for any huge pages that
lz4 couldn't compress. zstd's default level is slower but has great
compression, so it's quite suitable for this purpose.