nixpkgs/nixos/modules/services/networking/v2raya.nix
Elliot 08d651764f
v2raya: init at 2.0.0
Update nixos/modules/services/networking/v2raya.nix

Co-authored-by: zendo <linzway@qq.com>

Update nixos/modules/services/networking/v2raya.nix

Co-authored-by: zendo <linzway@qq.com>

Update pkgs/tools/networking/v2raya/default.nix

Co-authored-by: zendo <linzway@qq.com>

Update pkgs/tools/networking/v2raya/default.nix

Co-authored-by: zendo <linzway@qq.com>

Update nixos/modules/services/networking/v2raya.nix

Co-authored-by: zendo <linzway@qq.com>

Update pkgs/tools/networking/v2raya/default.nix

Co-authored-by: zendo <linzway@qq.com>

Update nixos/modules/services/networking/v2raya.nix

Co-authored-by: zendo <linzway@qq.com>
2022-12-11 22:23:12 +08:00

40 lines
1.1 KiB
Nix

{ config, pkgs, lib, ... }:
with lib;
{
options = {
services.v2raya = {
enable = options.mkEnableOption (mdDoc "the v2rayA service");
};
};
config = mkIf config.services.v2raya.enable {
environment.systemPackages = [ pkgs.v2raya ];
systemd.services.v2raya = {
unitConfig = {
Description = "v2rayA service";
Documentation = "https://github.com/v2rayA/v2rayA/wiki";
After = [ "network.target" "nss-lookup.target" "iptables.service" "ip6tables.service" ];
Wants = [ "network.target" ];
};
serviceConfig = {
User = "root";
ExecStart = "${getExe pkgs.v2raya} --log-disable-timestamp";
Environment = [ "V2RAYA_LOG_FILE=/var/log/v2raya/v2raya.log" ];
LimitNPROC = 500;
LimitNOFILE = 1000000;
Restart = "on-failure";
Type = "simple";
};
wantedBy = [ "multi-user.target" ];
path = with pkgs; [ iptables bash iproute2 ]; # required by v2rayA TProxy functionality
};
};
meta.maintainers = with maintainers; [ elliot ];
}