{ config, pkgs, stdenv, lib, ... }: {
imports = [{
home.packages = [
pkgs.clash-meta
];
systemd.user.services.clash = {
Unit = {
Description = "Auto start clash";
After = ["network.target"];
};
Install = {
WantedBy = ["default.target"];
};
Service = {
ExecStart = "${pkgs.clash-meta.outPath}/bin/clash-meta -d ${config.home.homeDirectory}/Gist/clash";
};
};
programs.zsh.initContent = lib.mkBefore (lib.optionalString (!config.isNixOnDroid) ''
# proxy
## default
HTTP_PROXY="http://127.0.0.1:${toString config.proxyPort}"
## microsoft wsl
# if [[ $(uname -r) == *"microsoft"* ]]; then
# hostip=$(cat /etc/resolv.conf | grep nameserver | awk '{ print $2 }')
# export HTTP_PROXY="http://$hostip:${toString config.proxyPort}"
# fi
export HTTPS_PROXY="$HTTP_PROXY"
export HTTP_PROXY="$HTTP_PROXY"
export FTP_PROXY="$HTTP_PROXY"
export http_proxy="$HTTP_PROXY"
export https_proxy="$HTTP_PROXY"
export ftp_proxy="$HTTP_PROXY"
unset_proxy() {
unset HTTPS_PROXY
unset HTTP_PROXY
unset FTP_PROXY
unset https_proxy
unset http_proxy
unset ftp_proxy
unset HTTPS_PORT
unset HTTP_PORT
unset FTP_PORT
unset https_port
unset http_port
unset ftp_port
unset ALL_PROXY
unset all_proxy
unset NO_PROXY
unset no_proxy
unset RSYNC_PROXY
unset rsync_proxy
}
'');
}];
}