flake/users/guanranwang/darwin/profiles/opt-in/clash-meta-client.nix

28 lines
660 B
Nix

{
inputs,
pkgs,
lib,
...
}: let
env = {
"http_proxy" = "http://127.0.0.1:7890";
"https_proxy" = "http://127.0.0.1:7890";
"ftp_proxy" = "http://127.0.0.1:7890";
"rsync_proxy" = "http://127.0.0.1:7890";
};
in {
# TODO: not run as root
# Proxy environment variables
environment.variables = env;
launchd.daemons."nix-daemon".environment = env;
# launchd service
launchd.daemons."clash-meta" = {
command = "${lib.getExe pkgs.clash-meta} -d /etc/clash-meta";
serviceConfig.RunAtLoad = true;
};
# Web interface
environment.etc."clash-meta/metacubexd".source = inputs.self.packages.${pkgs.system}.metacubexd;
}