feat: massive refactor

This commit is contained in:
2025-12-20 12:57:47 +08:00
parent f4c1b313ce
commit 454ad5885d
97 changed files with 1023 additions and 960 deletions

View File

@@ -1,13 +1,14 @@
{ config, lib, ... }:
lib.my.makeHomeProgramConfig {
inherit config;
programName = "alacritty";
optionPath = [
"desktop"
"terminal"
"alacritty"
];
extraConfig = {
let
cfg = config.my.desktop.terminal.alacritty;
in
{
options.my.desktop.terminal.alacritty = {
enable = lib.mkEnableOption "alacritty";
};
config = lib.mkIf cfg.enable {
my.hm.programs.alacritty.enable = true;
my.hm.programs.alacritty.settings = {
general.import = [ ./tokyonight-storm.toml ];
cursor.style = {

View File

@@ -1,13 +1,13 @@
{ config, lib, ... }:
lib.my.makeSwitch {
inherit config;
optionName = "all terminals";
optionPath = [
"desktop"
"terminal"
"all"
];
config' = {
let
cfg = config.my.desktop.terminal.all;
in
{
options.my.desktop.terminal.all = {
enable = lib.mkEnableOption "all terminals";
};
config = lib.mkIf cfg.enable {
my.desktop.terminal = {
alacritty.enable = true;
foot.enable = true;

View File

@@ -1,13 +1,14 @@
{ config, lib, ... }:
lib.my.makeHomeProgramConfig {
inherit config;
programName = "foot";
optionPath = [
"desktop"
"terminal"
"foot"
];
extraConfig = {
let
cfg = config.my.desktop.terminal.foot;
in
{
options.my.desktop.terminal.foot = {
enable = lib.mkEnableOption "foot";
};
config = lib.mkIf cfg.enable {
my.hm.programs.foot.enable = true;
my.hm.programs.foot = {
server.enable = true;
settings = {

View File

@@ -1,13 +1,14 @@
{ config, lib, ... }:
lib.my.makeHomeProgramConfig {
inherit config;
programName = "ghostty";
optionPath = [
"desktop"
"terminal"
"ghostty"
];
extraConfig = {
let
cfg = config.my.desktop.terminal.ghostty;
in
{
options.my.desktop.terminal.ghostty = {
enable = lib.mkEnableOption "ghostty";
};
config = lib.mkIf cfg.enable {
my.hm.programs.ghostty.enable = true;
my.hm.programs.ghostty = {
enableBashIntegration = true;
enableZshIntegration = true;

View File

@@ -1,13 +1,14 @@
{ config, lib, ... }:
lib.my.makeHomeProgramConfig {
inherit config;
programName = "kitty";
optionPath = [
"desktop"
"terminal"
"kitty"
];
extraConfig = {
let
cfg = config.my.desktop.terminal.kitty;
in
{
options.my.desktop.terminal.kitty = {
enable = lib.mkEnableOption "kitty";
};
config = lib.mkIf cfg.enable {
my.hm.programs.kitty.enable = true;
my.hm.programs.kitty = {
settings = {
cursor_blink_interval = 0;