WIP: gio: Add GMemoryMonitor to monitor for low-memory
Add a memory monitor object, with D-Bus and Portal based implementations. The D-Bus implementation uses the Linux-only low-memory-monitor Freedesktop project.
The API is simple, similarly to equivalent functionality on iOS and Android platforms.
- Implement portal functionality
- Verify and test non-sandboxed functionality
- Do we want to implement "oom killability" into the API, eg. returning something from the signal handler to say "yes, you can kill this process if needed". Or it could be a separate API: https://github.com/endlessm/chromium-browser/blob/45f610422da26b6bc60204b0eef2360ca52684cf/base/process/memory_linux.cc#L90