mirror of
https://github.com/zephrynis/nix-flake.git
synced 2026-02-18 20:21:53 +00:00
- Add complete colorshell v2.0.3 configuration to home/ags-config/ - Disable runner plugin and NightLight tile (incompatible with NixOS) - Customize SCSS with full opacity (no transparency) - Add dark pale blue color scheme in home/pywal-colors/ - Configure Papirus-Dark icon theme via home-manager - Make ~/.config/ags/ immutable and managed by Nix store - Auto-deploy pywal colors to ~/.cache/wal/colors.json All AGS configuration is now reproducible and version controlled.
81 lines
2.4 KiB
TypeScript
81 lines
2.4 KiB
TypeScript
import { Config } from "./modules/config";
|
|
|
|
import GLib from "gi://GLib?version=2.0";
|
|
|
|
|
|
const generalConfigDefaults = {
|
|
notifications: {
|
|
timeout_low: 4000,
|
|
timeout_normal: 6000,
|
|
timeout_critical: 0,
|
|
/** notification popup horizontal position. can be "left" or "right"
|
|
* @default "right" */
|
|
position_h: "right",
|
|
/** vertical notification popup position. can be "top" or "bottom"
|
|
* @default "top" */
|
|
position_v: "top"
|
|
},
|
|
|
|
night_light: {
|
|
/** whether to save night light values to disk */
|
|
save_on_shutdown: true
|
|
},
|
|
|
|
workspaces: {
|
|
/** breaks `enable_helper`, makes all workspaces show their respective ID
|
|
* by default */
|
|
always_show_id: false,
|
|
/** this is the function that shows the Workspace's IDs
|
|
* around the current workspace if one breaks the crescent order.
|
|
* It basically helps keyboard navigation between workspaces.
|
|
* ---
|
|
* Example: 1(empty, current, shows ID), 2(empty, does not appear(makes
|
|
* the previous not to be in a crescent order)), 3(not empty, shows ID) */
|
|
enable_helper: true,
|
|
/** hide workspace indicator if there's only one active workspace */
|
|
hide_if_single: false
|
|
},
|
|
|
|
clock: {
|
|
/** use the same format as gnu's `date` command */
|
|
date_format: "%A %d, %H:%M"
|
|
},
|
|
|
|
misc: {
|
|
play_bell_on_volume_change: true
|
|
}
|
|
};
|
|
|
|
const userDataDefaults = {
|
|
/** last default adapter */
|
|
bluetooth_default_adapter: undefined as unknown as string,
|
|
|
|
control_center: {
|
|
/** last default backlight */
|
|
default_backlight: undefined as unknown as string
|
|
},
|
|
|
|
night_light: {
|
|
/** last blue light filter temperature */
|
|
temperature: 6000,
|
|
/** last gamma filter value */
|
|
gamma: 100,
|
|
/** wheter to enable identity filters("disables" the filters) */
|
|
identity: true
|
|
}
|
|
};
|
|
|
|
export const userData = new Config<
|
|
keyof typeof userDataDefaults,
|
|
(typeof userDataDefaults)[keyof typeof userDataDefaults]
|
|
>(
|
|
`${GLib.get_user_data_dir()}/colorshell/data.json`,
|
|
userDataDefaults
|
|
);
|
|
|
|
export const generalConfig = new Config<keyof typeof generalConfigDefaults,
|
|
typeof generalConfigDefaults[keyof typeof generalConfigDefaults]>(
|
|
`${GLib.get_user_config_dir()}/colorshell/config.json`,
|
|
generalConfigDefaults
|
|
);
|