* fix(hm-module,spaces): missing columns when Zen is opened before the spaces table is created
Appearently, opening Zen before the spaces service runs could cause the
table not having the theme columns. Because of this, the CREATE TABLE IF
NOT EXISTS query would not run, but the columns would still not be
present. This commit adds the column via a bash script plus an ALTER
TABLE query, mimicking more what Zen does in it JavaScript code.
* style(hm-module): run nix fmt on hm-module
* refactor(hm-module,spaces): move bash scripts and sql queries directly to service executable
This was made to reduce the amount of derivations being build to just
one per-profile. Also, this helps make all the logic of the spaces
activation be into a single executable for debugging and error handling.
* feat(hm-module,spaces): error handling for locked database
Provide a useful error message to the user if the service fails due to
opened Zen browser instance.
* feat(hm-module,spaces): implement places.sqlite updating via home.file.* script
This fixed the problem of the systemd service being rerun on every
home-manager rebuild. Now the places.sqlite updating script just runs
when something needs to be updated on it. We use home.file.* to store
the script on the home directory and take advantage of the
home.file.*.onChange option to run it.
* feat(hm-module,spaces)!: change type of colors values to integer between 0 and 255
* docs: change bold headers to markdown headers to add support #links
* docs: [work]spaces options documentation and example