This is the first in a series of commits for refactoring my
configuration to make use of jwiegley's use-package.
In the previous layout of the configuration there were some questions
around what settings go into which file, but in the end it is all just
related to which packages are being configured (besides settings
related to global Emacs behaviour).
This commit introduces use-package forms for all currently used
packages (which are still installed via Nix, not via package.el) but
does not yet clean up the rest of the configuration in a suitable way.
Note that this version introduces a bug in which the configuration of
telephone line is not correctly initialised after package setup.
This adds support for a special log stream name called "global", which
instead of setting that as a log stream changes the resource
descriptor to be of the `global` monitored resource descriptor.
According to the information we have in #4 logs submitted to that
resource descriptor should be compatible with Stackdriver Error
Reporting. This is relevant when running journaldriver outside of GCP
as there is no way to utilise Error Reporting with the log stream
resource.
This relates to #4. I'm unsure about saying whether or not it "fixes"
it.
Adds a home-manager configuration that can be used in a Crostini
container running Nix. There isn't any truly ChromeOS-specific stuff
in this yet, as I've set up the interoperability with garcon etc.
manually for now.
NixOS 18.09 switches from slim to something else (lightdm?) as the
default display manager, however DBUS is broken in that manager if the
session is ever restarted.
This reverts back to slim, which may not look as fancy by default but
it actually works.
Removes a whole bunch of manually pinned packages that were moved into
stable in 18.09.
However, it should be noted that `sly` is again broken in stable.
The previous change, which makes journaldriver write the cursor
position in two steps, requires that journaldriver can write files
adjacent to the cursor position file itself.
Instead of simply guessing that this is possible (e.g. by changing the
file suffix), expect the user to provide a directory that
journaldriver can work with.
Exits from `persist_cursor` early if the cursor received from journald
is an empty string.
We don't currently know if this actually happens (please see #2 for
more details), so an error message has been added that asks users to
report this if it ever occurs.
This deals with a potential issue where creating a new file in place
of an existing cursor position file may cause position files to be
empty.
The cause for this is that the newly created file will truncate the
previous content, if journaldriver is then terminated before it
completes the cursor write to this file, it will not have written a
valid cursor (or anything at all).
Potentially relates to #2
This replaces reqwest with the more simplistic ureq library for
performing required HTTP requests.
Reqwest comes with a lot of (tokio-based) machinery for
high-performance requesting that is a bit out of scope for
journaldriver's needs.
This clocks in at 62 (!) fewer dependencies after the change, with
equivalent functionality. Wew.
(kjære barn har mange navn :P)
Adds a small piece of documentation about the conversion between
journald priorities and Stackdriver severities to the README, as well
as information about how to easily emit messages at different
priorities from applications logging to journald.
If a priority is present, it is passed as-is into the Stackdriver API.
This allows filtering by severity in the logs UI. Conveniently, the
levels are the same between journald and Stackdriver.
Fixes#11.
Launch EXWM directly in Emacs, instead of first launching an Emacs
server and connecting a client.
In cases where Emacs does not start correctly due to initialisation
errors the error message would never become visible without this change.
Apparently the wifi card likes to act up occasionally (this is new?)
and can't see the 5Ghz network anymore.
This adds the 2.4Ghz network as a fallback in those cases.