Open kpzhao opened 1 week ago
{ self, lib, ... }:
with self.homeModules;
# Fancy
let
echo = lib.abszero.trivial.join "echo ";
in
[
profiles-full
{
abszero.emails = {
protonmail = {
primary = true;
address = "weathercold.scr@proton.me";
userName = "weathercold.scr@proton.me";
passwordCommand = echo "<redacted>";
imap = {
host = "127.0.0.1";
port = 1143;
};
smtp = {
host = "127.0.0.1";
port = 1025;
tls.useStartTls = true;
};
realName = "Weathercold";
};
personal-gmail = {
address = "<redacted>";
passwordCommand = echo "<redacted>";
flavor = "gmail.com";
realName = "Weathercold";
};
school-gmail = {
address = "<redacted>";
passwordCommand = echo "<redacted>";
flavor = "gmail.com";
realName = "<redacted>";
};
school-outlook = {
address = "<redacted>";
passwordCommand = echo "<redacted>";
flavor = "outlook.office365.com";
realName = "<redacted>";
};
};
}
]
我用 git-secret 加密整个文件,根据需求可以考虑 sops-nix 或者 agenix,但是这两个不支持在 eval time 读取机密
非常感谢,我研究一下。还有你的系统配置和home manager配置是分别build的吗?可以把home manager的配置作为flake的module吗?按照home manager manual里面添加为module提示withSystem不存在
没错,我的 NixOS 和 home-manager 配置是分开的,不过大多数人用 home-manager 的 NixOS module,这样的话方便一些,而且可以让 hm 配置读取系统配置。你说的把 home-manager 的配置作为 flake 的 module 我没明白,manual 里面并没有提到 flake-parts,你如果想分开配置的话定义 flake.homeConfigurations.*
就行了
您好,我是把home-manager作为nixos module配置的,
outputs = inputs@{ nixpkgs, home-manager, ... }: {
nixosConfigurations = {
hostname = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [
./configuration.nix
home-manager.nixosModules.home-manager
{
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.users.jdoe = import ./home.nix;
# Optionally, use home-manager.extraSpecialArgs to pass
# arguments to home.nix
}
];
};
};
};
这样的话怎么引入自定义的home-manager的option呢?(比如home/modules/programs/fish.nix)
您好,我在按照您的flake结构给我的配置文件重构,现在正在配homemanager, 但是里面有个_base.nix.secret 是加密的,您方便给看下里面结构吗?方便隐去里面的私密信息吗?