拆分 Home Manager 程序配置

This commit is contained in:
2026-05-30 22:55:47 +08:00
parent 66f91f8506
commit 272d6402ad
7 changed files with 116 additions and 95 deletions
+10 -94
View File
@@ -1,15 +1,19 @@
{ config, pkgs, inputs, ... }:
let
spicePkgs = inputs.spicetify-nix.legacyPackages.${pkgs.stdenv.system};
in
{ pkgs, ... }:
{
imports = [
./programs/fish.nix
./programs/git.nix
./programs/plasma.nix
./programs/rime.nix
./programs/spicetify.nix
];
# ⚠️ 极其重要:替换成你的实际系统用户名
home.username = "luodh";
home.homeDirectory = "/home/luodh";
# 你的个人日常软件全写在这里!
# 个人日常软件
home.packages = with pkgs; [
qq
fastfetch
@@ -37,100 +41,12 @@ in
wemeet
];
# Rime 输入法配置(雾凇拼音)
home.file.".local/share/fcitx5/rime/default.custom.yaml".text = ''
patch:
schema_list:
- schema: rime_ice
menu/page_size: 7
'';
xdg.configFile."fcitx5/profile" = {
force = true;
text = ''
[Groups/0]
Name=Default
Default Layout=us
DefaultIM=keyboard-us
[Groups/0/Items/0]
Name=keyboard-us
Layout=
[Groups/0/Items/1]
Name=rime
Layout=
[GroupOrder]
0=Default
'';
};
home.activation.setupRimeIce = config.lib.dag.entryAfter ["writeBoundary"] ''
RIME_DIR="$HOME/.local/share/fcitx5/rime"
mkdir -p "$RIME_DIR"
for item in ${pkgs.rime-data}/share/rime-data/*; do
name=$(basename "$item")
[ -e "$RIME_DIR/$name" ] || ln -sf "$item" "$RIME_DIR"
done
for item in ${pkgs.rime-ice}/share/rime-data/*; do
name=$(basename "$item")
[ -e "$RIME_DIR/$name" ] && rm -rf "$RIME_DIR/$name"
ln -sf "$item" "$RIME_DIR"
done
'';
home.sessionPath = [
"$HOME/.npm-global/bin"
];
# 让 nix-shell 等传统命令也能安装 unfree 软件
xdg.configFile."nixpkgs/config.nix".text = "{ allowUnfree = true; }";
programs.fish = {
enable = true;
interactiveShellInit = ''
fish_add_path "$HOME/.npm-global/bin"
'';
};
programs.git = {
enable = true;
settings = {
user = {
name = "Aloys23";
email = "aloys233@gmail.com";
};
init.defaultBranch = "main";
pull.rebase = false;
};
};
programs.spicetify = {
enable = true;
enabledCustomApps = with spicePkgs.apps; [
marketplace
];
};
# Plasma 桌面环境接管
programs.plasma = {
enable = true;
# 关闭鼠标加速度,灵敏度保持默认
configFile."kcminputrc" = {
"Mouse" = {
"XLbInptPointerAccel" = 0.0; # 关闭鼠标加速度
"XLbInptAccelProfileFlat" = true; # 平坦加速曲线
};
};
};
# 这个版本号不要改!它不是软件版本,而是系统状态标识
home.stateVersion = "25.11";
# 让 Home Manager 管理自己
programs.home-manager.enable = true;
}