#! /usr/bin/env perl

# PODNAME: network_manager
# ABSTRACT: NetworkManager tightening script


use v5.37.9;
use lib '/home/regular/IdeaProjects/NetworkManager-Strict/lib';
use English;
use Term::ANSIColor;

use NetworkManager::Strict;

BEGIN {
  if ( $UID != 0 ) {
    die colored my $message = <<~ "EXCEPTION" , 'red';
    Please execute the program as the root user (for /etc/NetworkManager access).

    sudo ~/perl5/perlbrew/perls/blead/bin/perl \\
      -I ~/perl5/perlbrew/perls/blead/lib \\
      $PROGRAM_NAME ,
    EXCEPTION
  }
}

my $n = NetworkManager::Strict -> new;

# say $n -> path;
say $n -> set_dns;
say $n -> lock;
say colored [ qw( bright_green bold ) ] , 'DNS set, interfaces locked';

__END__

=pod

=encoding UTF-8

=head1 NAME

network_manager - NetworkManager tightening script

=head1 VERSION

version 0.230480

=head1 SYNOPSIS

  sudo ./network_manager # file's executable, Perl >= 5.37.9

  sudo perl network_manager # Perl >= 5.37.9

  sudo ~/perl5/perlbrew/perls/blead/bin/perl \\
    -I ~/perl5/perlbrew/perls/blead/lib \\
    network_manager # using perlbrew with a perl aliased as "blead"

=head1 AUTHOR

Elvin Aslanov <rwp.primary@gmail.com>

=head1 COPYRIGHT AND LICENSE

This software is copyright (c) 2023 by Elvin Aslanov.

This is free software; you can redistribute it and/or modify it under
the same terms as the Perl 5 programming language system itself.

=cut
