Loading nixos/modules/services/networking/v2raya.nix +30 −19 Original line number Diff line number Diff line Loading @@ -12,11 +12,22 @@ with lib; config = mkIf config.services.v2raya.enable { environment.systemPackages = [ pkgs.v2raya ]; systemd.services.v2raya = { systemd.services.v2raya = let nftablesEnabled = config.networking.nftables.enable; iptablesServices = [ "iptables.service" ] ++ optional config.networking.enableIPv6 "ip6tables.service"; tableServices = if nftablesEnabled then [ "nftables.service" ] else iptablesServices; in { unitConfig = { Description = "v2rayA service"; Documentation = "https://github.com/v2rayA/v2rayA/wiki"; After = [ "network.target" "nss-lookup.target" "iptables.service" "ip6tables.service" ]; After = [ "network.target" "nss-lookup.target" ] ++ tableServices; Wants = [ "network.target" ]; }; Loading pkgs/tools/networking/v2raya/default.nix +15 −4 Original line number Diff line number Diff line Loading @@ -11,12 +11,14 @@ let pname = "v2raya"; version = "2.0.0"; src = fetchFromGitHub { owner = "v2rayA"; repo = "v2rayA"; rev = "v${version}"; sha256 = "sha256-1fWcrMd+TSrlS1H0z7XwVCQzZAa8DAFtlekEZNRMAPA="; }; web = mkYarnPackage { inherit pname version; src = "${src}/gui"; Loading @@ -32,21 +34,32 @@ let dontInstall = true; dontFixup = true; }; assetsDir = symlinkJoin { name = "assets"; paths = [ v2ray-geoip v2ray-domain-list-community ]; }; in buildGoModule { inherit pname version; src = "${src}/service"; vendorSha256 = "sha256-Ud4pwS0lz7zSTowg3gXNllfDyj8fu33H1L20szxPcOA="; ldflags = [ "-s" "-w" "-X github.com/v2rayA/v2rayA/conf.Version=${version}" ]; subPackages = [ "." ]; nativeBuildInputs = [ makeWrapper ]; preBuild = '' cp -a ${web} server/router/web ''; postInstall = '' install -Dm 444 ${src}/install/universal/v2raya.desktop -t $out/share/applications install -Dm 444 ${src}/install/universal/v2raya.png -t $out/share/icons/hicolor/512x512/apps Loading @@ -55,11 +68,9 @@ buildGoModule { wrapProgram $out/bin/v2rayA \ --prefix PATH ":" "${lib.makeBinPath [ v2ray ]}" \ --prefix XDG_DATA_DIRS ":" ${symlinkJoin { name = "assets"; paths = [ v2ray-geoip v2ray-domain-list-community ]; }}/share --prefix XDG_DATA_DIRS ":" ${assetsDir}/share ''; meta = with lib; { description = "A Linux web GUI client of Project V which supports V2Ray, Xray, SS, SSR, Trojan and Pingtunnel"; homepage = "https://github.com/v2rayA/v2rayA"; Loading Loading
nixos/modules/services/networking/v2raya.nix +30 −19 Original line number Diff line number Diff line Loading @@ -12,11 +12,22 @@ with lib; config = mkIf config.services.v2raya.enable { environment.systemPackages = [ pkgs.v2raya ]; systemd.services.v2raya = { systemd.services.v2raya = let nftablesEnabled = config.networking.nftables.enable; iptablesServices = [ "iptables.service" ] ++ optional config.networking.enableIPv6 "ip6tables.service"; tableServices = if nftablesEnabled then [ "nftables.service" ] else iptablesServices; in { unitConfig = { Description = "v2rayA service"; Documentation = "https://github.com/v2rayA/v2rayA/wiki"; After = [ "network.target" "nss-lookup.target" "iptables.service" "ip6tables.service" ]; After = [ "network.target" "nss-lookup.target" ] ++ tableServices; Wants = [ "network.target" ]; }; Loading
pkgs/tools/networking/v2raya/default.nix +15 −4 Original line number Diff line number Diff line Loading @@ -11,12 +11,14 @@ let pname = "v2raya"; version = "2.0.0"; src = fetchFromGitHub { owner = "v2rayA"; repo = "v2rayA"; rev = "v${version}"; sha256 = "sha256-1fWcrMd+TSrlS1H0z7XwVCQzZAa8DAFtlekEZNRMAPA="; }; web = mkYarnPackage { inherit pname version; src = "${src}/gui"; Loading @@ -32,21 +34,32 @@ let dontInstall = true; dontFixup = true; }; assetsDir = symlinkJoin { name = "assets"; paths = [ v2ray-geoip v2ray-domain-list-community ]; }; in buildGoModule { inherit pname version; src = "${src}/service"; vendorSha256 = "sha256-Ud4pwS0lz7zSTowg3gXNllfDyj8fu33H1L20szxPcOA="; ldflags = [ "-s" "-w" "-X github.com/v2rayA/v2rayA/conf.Version=${version}" ]; subPackages = [ "." ]; nativeBuildInputs = [ makeWrapper ]; preBuild = '' cp -a ${web} server/router/web ''; postInstall = '' install -Dm 444 ${src}/install/universal/v2raya.desktop -t $out/share/applications install -Dm 444 ${src}/install/universal/v2raya.png -t $out/share/icons/hicolor/512x512/apps Loading @@ -55,11 +68,9 @@ buildGoModule { wrapProgram $out/bin/v2rayA \ --prefix PATH ":" "${lib.makeBinPath [ v2ray ]}" \ --prefix XDG_DATA_DIRS ":" ${symlinkJoin { name = "assets"; paths = [ v2ray-geoip v2ray-domain-list-community ]; }}/share --prefix XDG_DATA_DIRS ":" ${assetsDir}/share ''; meta = with lib; { description = "A Linux web GUI client of Project V which supports V2Ray, Xray, SS, SSR, Trojan and Pingtunnel"; homepage = "https://github.com/v2rayA/v2rayA"; Loading