Добрый день!
Предлагаю добавить в описание как можно заставить работать Zapret на NixOS:
В директории /etc/nixos/ создается или копируется папка с вашим запретом которую ранее запускали в ручную. После чего создается отдельный модуль к примеру zapret.nix в директории /etc/nixos
Zapret.nix
{ config, pkgs, ... }:
{
systemd.services.zapret = {
enable = true;
after = [ "network.target" ];
wantedBy = [ "multi-user.target" ];
description = "Custom Script Service";
path = with pkgs; [ sudo git nftables iproute2 coreutils ];
serviceConfig = {
Type = "simple";
WorkingDirectory="/etc/nixos/zapret/";
User="root";
ExecStart=''
${pkgs.bash}/bin/bash /etc/nixos/zapret/main_script.sh -nointeractive
'';
ExecStop=''
${pkgs.bash}/bin/bash /etc/nixos/zapret/stop_and_clean_nft.sh
'';
ExecStopPost=''
${pkgs.coreutils}/bin/echo "Сервис завершён"
'';
PIDFile=''
/run/zapret_discord_youtube.pid
'';
Restart = "on-failure";
RestartSec = "5s";
};
};
}
Затем в конфигурационный файл configuration.nix добавляем отдельный модуль в формате
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
./zapret.nix
];
Так-же в конфигурационном файле включается nftables следующим образом:
networking.nftables.enable = true;
Добрый день!
Предлагаю добавить в описание как можно заставить работать Zapret на NixOS:
В директории /etc/nixos/ создается или копируется папка с вашим запретом которую ранее запускали в ручную. После чего создается отдельный модуль к примеру zapret.nix в директории /etc/nixos
Zapret.nix
Затем в конфигурационный файл configuration.nix добавляем отдельный модуль в формате
Так-же в конфигурационном файле включается nftables следующим образом:
networking.nftables.enable = true;