Add configuration for GNOME
This commit is contained in:
parent
46b9bacd18
commit
7804080953
47 changed files with 6899 additions and 0 deletions
60
.config/gnome-settings/README.md
Normal file
60
.config/gnome-settings/README.md
Normal file
|
|
@ -0,0 +1,60 @@
|
|||
# GNOME Settings
|
||||
|
||||
|
||||
This folder contains my GNOME settings
|
||||
split into several `*.ini` files by logical group.
|
||||
|
||||
Machine-specific overrides may live in `local/*.ini` and are loaded last.
|
||||
See this [README.md](./local/README.md) for details and examples.
|
||||
|
||||
|
||||
All paths inside the files are absolute,
|
||||
anchored at the root of `dconf`.
|
||||
Therefore, they must always be loaded anchored at the root as well.
|
||||
|
||||
The files are machine independent and use `/home/user` as a placeholder,
|
||||
which must be rewritten to the real home directory before loading:
|
||||
|
||||
```bash
|
||||
sed "s|/home/user|$HOME|g" <file> | dconf load /
|
||||
```
|
||||
|
||||
|
||||
[`gnome-restore`](../../.local/bin/gnome-restore) automates this upon every login
|
||||
(via the `gnome-restore.service` systemd user unit).
|
||||
|
||||
Process:
|
||||
1. Back up the current `dconf` state into ~/.local/state/gnome-settings-backups/
|
||||
2. On a fresh session, remove the temporary background state
|
||||
written by [`randomize-background`](../../.local/bin/randomize-background)
|
||||
3. Reset all managed sub-trees,
|
||||
so that keys removed from the `*.ini` files do not linger in the live state
|
||||
4. Patch a broken backup path in the installed `forge` extension (`theme.js`)
|
||||
5. Ensure the enabled GNOME extensions' schemas are imported
|
||||
6. Load every `*.ini` here, then every `local/*.ini`
|
||||
7. Apply a small [patch](../../.local/bin/gnome-shell-extension-forge-patch)
|
||||
to the `forge` extension to draw borders on unfocused windows
|
||||
|
||||
[`dconf-load`](../../.local/bin/dconf-load) captures step 6 as an independent utility,
|
||||
or for just one file given as an argument,
|
||||
which is handy while iterating on a single `*.ini`:
|
||||
|
||||
```bash
|
||||
dconf-load key-bindings.ini
|
||||
```
|
||||
|
||||
It neither backs up nor resets anything,
|
||||
so keys removed from the `*.ini` files stay active until the next `gnome-restore`.
|
||||
Its purpose is to help during development of the `*.ini` files.
|
||||
|
||||
|
||||
[`dconf-verify`](../../.local/bin/dconf-verify) lists keys diverging
|
||||
between the live state and the `*.ini` files,
|
||||
and can be used to find live keys worth adopting.
|
||||
|
||||
|
||||
|
||||
## Color Palette
|
||||
|
||||
`COLORS.md` is an untracked, human-readable overview of the palette,
|
||||
written by [`color-palette`](../../.local/bin/color-palette).
|
||||
Loading…
Reference in a new issue