### Manual Build and Installation Source: https://github.com/gene-git/dns_tools/blob/master/README.rst Commands for manually building the package using the 'build' module and installing it. Includes steps for cleaning previous builds and specifying installation destination. ```bash rm -f dist/* python -m build --wheel --no-isolation root_dest="/" ./scripts/do-install $root_dest ``` -------------------------------- ### Manual Build and Installation Source: https://github.com/gene-git/dns_tools/blob/master/Docs/README.rst Commands for manually building the package using the 'build' module and installing it. Includes steps for cleaning previous builds and specifying installation destination. ```bash rm -f dist/* python -m build --wheel --no-isolation root_dest="/" ./scripts/do-install $root_dest ``` -------------------------------- ### Project Dependencies Source: https://github.com/gene-git/dns_tools/blob/master/packaging/requirements.txt Lists the runtime and build/installation dependencies for the DNS Tools project. Runtime dependencies include Python 3.13+, rsync, ldns, and lockmgr. Build and installation dependencies include git, hatch, build, installer, and wheel. ```python python >= 3.13 rsync ldns lockmgr git hatch build installer wheel ``` -------------------------------- ### Configuration File Setup Source: https://github.com/gene-git/dns_tools/blob/master/Docs/README.rst Instructions for setting up and editing the DNS tools configuration file. The configuration file specifies working directories, DNS server details, and restart commands. ```bash cd /etc/dns_tools cp conf.d/config.sample conf.d/config ``` -------------------------------- ### Configuration File Setup Source: https://github.com/gene-git/dns_tools/blob/master/README.rst Instructions for setting up and editing the DNS tools configuration file. The configuration file specifies working directories, DNS server details, and restart commands. ```bash cd /etc/dns_tools cp conf.d/config.sample conf.d/config ``` -------------------------------- ### NSD Configuration for Signed Zones Source: https://github.com/gene-git/dns_tools/blob/master/README.rst Example NSD configuration snippet showing how to point to a signed zone file. This is crucial for enabling DNSSEC for a domain. ```bash zone: name: example.com #zonefile: %s # unsigned zonefile: %s.signed/zone # signed include-pattern: "tosecondary" # notify all secondary servers ``` -------------------------------- ### NSD Configuration for Signed Zones Source: https://github.com/gene-git/dns_tools/blob/master/Docs/README.rst Example NSD configuration snippet showing how to point to a signed zone file. This is crucial for enabling DNSSEC for a domain. ```bash zone: name: example.com #zonefile: %s # unsigned zonefile: %s.signed/zone # signed include-pattern: "tosecondary" # notify all secondary servers ``` -------------------------------- ### Optional Requirements for Documentation Source: https://github.com/gene-git/dns_tools/blob/master/packaging/optional-requirements.txt This file lists optional Python packages required for building project documentation. Sphinx is used for generating HTML documentation, and a LaTeX distribution is needed for PDF output. Ensure your LaTeX installation includes 'pdflatex'. ```shell sphinx texlive-latexextra ``` -------------------------------- ### NSD Restart Command Source: https://github.com/gene-git/dns_tools/blob/master/README.rst Example command to restart the NSD service. This is a system-level command used for applying DNS configuration changes. ```bash dns_restart_cmd = "/usr/bin/systemctl restart nsd" ``` -------------------------------- ### NSD Restart Command Source: https://github.com/gene-git/dns_tools/blob/master/Docs/README.rst Example command to restart the NSD service. This is a system-level command used for applying DNS configuration changes. ```bash dns_restart_cmd = "/usr/bin/systemctl restart nsd" ``` -------------------------------- ### DNS Tool Command-Line Options Source: https://github.com/gene-git/dns_tools/blob/master/Docs/README.rst Provides an overview of the command-line options for the dns-tool, which handles key generation, zone signing, and key rolls. Includes options for testing, printing keys, signing, and various key roll phases. ```APIDOC dns-tool: Handles key generation, zone signing and key rolls. Positional Arguments: one or more domains: Overrides config file for specified domains. Options: -h, --help: Show this help message and exit. --theme : Output color theme for tty. -t, --test: Test mode - print but don't perform actions. -v, --verb: Increase verbosity. --serial_bump: Bump all serial numbers. Implies --sign. --keep_include: Keep temp file with $INCLUDE expanded. --sign: Sign zones with current keys (KSK and ZSK). --sign_ksk_next: Sign zones with the next KSK. --sign_zsk_next: Sign zones with the next ZSK. --gen_zsk_curr: Generate current ZSK. --gen_zsk_next: Generate next ZSK. --gen_ksk_curr: Generate current KSK. --gen_ksk_next: Generate next KSK. --zsk_roll_1: ZSK Phase 1 roll (old and new keys). --zsk_roll_2: ZSK Phase 2 roll (new keys only). --ksk_roll_1: KSK Phase 1 roll (old and new keys) - requires adding new DS to registrar. --ksk_roll_2: KSK Phase 2 roll (new keys only). --print_keys: Print current and next keys. --ksk_algo : Set KSK key algorithm (default: ED25519). --zsk_algo : Set ZSK key algorithm (default: ED25519). ``` -------------------------------- ### DNS Tool Command-Line Options Source: https://github.com/gene-git/dns_tools/blob/master/README.rst Provides an overview of the command-line options for the dns-tool, which handles key generation, zone signing, and key rolls. Includes options for testing, printing keys, signing, and various key roll phases. ```APIDOC dns-tool: Handles key generation, zone signing and key rolls. Positional Arguments: one or more domains: Overrides config file for specified domains. Options: -h, --help: Show this help message and exit. --theme : Output color theme for tty. -t, --test: Test mode - print but don't perform actions. -v, --verb: Increase verbosity. --serial_bump: Bump all serial numbers. Implies --sign. --keep_include: Keep temp file with $INCLUDE expanded. --sign: Sign zones with current keys (KSK and ZSK). --sign_ksk_next: Sign zones with the next KSK. --sign_zsk_next: Sign zones with the next ZSK. --gen_zsk_curr: Generate current ZSK. --gen_zsk_next: Generate next ZSK. --gen_ksk_curr: Generate current KSK. --gen_ksk_next: Generate next KSK. --zsk_roll_1: ZSK Phase 1 roll (old and new keys). --zsk_roll_2: ZSK Phase 2 roll (new keys only). --ksk_roll_1: KSK Phase 1 roll (old and new keys) - requires adding new DS to registrar. --ksk_roll_2: KSK Phase 2 roll (new keys only). --print_keys: Print current and next keys. --ksk_algo : Set KSK key algorithm (default: ED25519). --zsk_algo : Set ZSK key algorithm (default: ED25519). ``` -------------------------------- ### Python Backend Build Switch Source: https://github.com/gene-git/dns_tools/blob/master/Docs/Changelog.rst This entry describes the transition of the Python backend build process to use 'hatch' for improved build management and optimization. ```python Switch python backend build to hatch ``` -------------------------------- ### DNS Production Push Options Source: https://github.com/gene-git/dns_tools/blob/master/README.rst Details the command-line options for the dns-prod-push tool, used to deploy signed and unsigned zones to DNS servers. Includes options for specifying which zones to push and restarting the DNS service. ```APIDOC dns-prod-push: Tool to push signed and unsigned zones to the dns server(s). Positional Arguments: one or more domains: Overrides config file for specified domains. Options: -h, --help: Show this help message and exit. --theme : Output color theme for tty. --int_ext : Specify which zones to push (default: both). --to_production: Copy zone files from staging area to live production area. --dns_restart: Restart the DNS server after updating zones using the config variable *dns_restart_cmd*. ``` -------------------------------- ### DNS Production Push Options Source: https://github.com/gene-git/dns_tools/blob/master/Docs/README.rst Details the command-line options for the dns-prod-push tool, used to deploy signed and unsigned zones to DNS servers. Includes options for specifying which zones to push and restarting the DNS service. ```APIDOC dns-prod-push: Tool to push signed and unsigned zones to the dns server(s). Positional Arguments: one or more domains: Overrides config file for specified domains. Options: -h, --help: Show this help message and exit. --theme : Output color theme for tty. --int_ext : Specify which zones to push (default: both). --to_production: Copy zone files from staging area to live production area. --dns_restart: Restart the DNS server after updating zones using the config variable *dns_restart_cmd*. ``` -------------------------------- ### DNS Tool Usage Source: https://github.com/gene-git/dns_tools/blob/master/Docs/README.rst Demonstrates the basic commands for rolling ZSK keys and pushing DNS changes to production. These commands are typically automated via cron jobs. ```bash /usr/bin/dns-tool --zsk_roll_1 /usr/bin/dns-prod-push --dns_restart --to_production ``` ```bash /usr/bin/dns-tool --zsk_roll_2 /usr/bin/dns-prod-push --dns_restart --to_production ``` -------------------------------- ### DNS Tool Usage Source: https://github.com/gene-git/dns_tools/blob/master/README.rst Demonstrates the basic commands for rolling ZSK keys and pushing DNS changes to production. These commands are typically automated via cron jobs. ```bash /usr/bin/dns-tool --zsk_roll_1 /usr/bin/dns-prod-push --dns_restart --to_production ``` ```bash /usr/bin/dns-tool --zsk_roll_2 /usr/bin/dns-prod-push --dns_restart --to_production ``` -------------------------------- ### README Updates and Additions Source: https://github.com/gene-git/dns_tools/blob/master/Docs/Changelog.rst This snippet covers various updates made to the project's README file, including adding build information, clarifying usage instructions, adding an FAQ section, and fixing markdown formatting. ```markdown update build info in README update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment update readme for resign.sh changes fix typo in comment ``` -------------------------------- ### Documentation Reorganization and Generation Source: https://github.com/gene-git/dns_tools/blob/master/Docs/Changelog.rst This entry details efforts to reorganize and improve project documentation, including the implementation of Sphinx for easier generation of HTML and PDF documentation. ```markdown Reorg and rework documentation. Now simple to generate html and pdf docs using sphinx ``` -------------------------------- ### Command Line Argument Handling Source: https://github.com/gene-git/dns_tools/blob/master/README.rst The dns-tool command line interface allows for flexible argument naming, accepting both hyphens and underscores for long arguments, ensuring user-friendliness and compatibility with different input styles. ```python dns-tool treats *--zsk-roll-1* and *--zsk_roll_1* exactly the same. ``` -------------------------------- ### Key Algorithm Configuration Source: https://github.com/gene-git/dns_tools/blob/master/Docs/README.rst Users can configure the algorithms used for KSK and ZSK keys via configuration files or the command line. Supported algorithms include ECDSAP256SHA256, ECDSAP384SHA384, ED25519, and ED448, with ED25519 as the default. ```python ksk/zsk key algorithms are now settable from config/command line. Supported algos are: ECDSAP256SHA256, ECDSAP384SHA384, ED25519 and ED448. Default remains ED25519. ``` -------------------------------- ### Project Version Updates and Refactoring Source: https://github.com/gene-git/dns_tools/blob/master/Docs/Changelog.rst This snippet summarizes various project updates, including version increments, refactoring code to use `max(a,b)` instead of conditional statements, and introducing a lock mechanism for concurrent execution. ```markdown update project version use max(a,b) instead of if(a>b) etc Now uses separate lockmgr package instead of local copy Some lint cleanups. Add lock to ensure only one dns-tool runs at a time. NB The inotify code, used to wait on lock, uses inotify in libc This returns a struct inotify_event and the size of this struct is important. Best I know on every (linux) system the struct size is: (int, uint_32_t, uint_32_t, uint_32_t, ...) If you find a system where they are different (see man inotify) let me know! ``` -------------------------------- ### Key Algorithm Configuration Source: https://github.com/gene-git/dns_tools/blob/master/README.rst Users can configure the algorithms used for KSK and ZSK keys via configuration files or the command line. Supported algorithms include ECDSAP256SHA256, ECDSAP384SHA384, ED25519, and ED448, with ED25519 as the default. ```python ksk/zsk key algorithms are now settable from config/command line. Supported algos are: ECDSAP256SHA256, ECDSAP384SHA384, ED25519 and ED448. Default remains ED25519. ``` -------------------------------- ### Command Line Argument Handling Source: https://github.com/gene-git/dns_tools/blob/master/Docs/README.rst The dns-tool command line interface allows for flexible argument naming, accepting both hyphens and underscores for long arguments, ensuring user-friendliness and compatibility with different input styles. ```python dns-tool treats *--zsk-roll-1* and *--zsk_roll_1* exactly the same. ``` -------------------------------- ### Test Mode Functionality Source: https://github.com/gene-git/dns_tools/blob/master/Docs/README.rst Each tool supports a test mode activated by the -t or --test option. In this mode, actions are printed to the console instead of being executed, allowing users to preview operations without making actual changes to DNS configurations. ```python For convenience each tool supports a test mode engaged using the *-t, --test* option. When run in test mode, actions are printed instead of actually being done. ``` -------------------------------- ### Test Mode Functionality Source: https://github.com/gene-git/dns_tools/blob/master/README.rst Each tool supports a test mode activated by the -t or --test option. In this mode, actions are printed to the console instead of being executed, allowing users to preview operations without making actual changes to DNS configurations. ```python For convenience each tool supports a test mode engaged using the *-t, --test* option. When run in test mode, actions are printed instead of actually being done. ``` -------------------------------- ### Key Rolling Phases Source: https://github.com/gene-git/dns_tools/blob/master/README.rst The key rolling process is divided into two phases to ensure a smooth transition. Phase 1 involves creating a new 'next' key and signing the zone files with both the current and new keys. Phase 2, after a sufficient waiting period (e.g., 2x TTL), renames the 'next' key to 'curr' and resigns the zone files using only the new key. ```python * **Phase 1** Create a new key, called *next*, then sign the zone files using this key as well as the current key (we call this *curr* for short). With the records now double signed the existing key remains valid. * **Phase 2** After a period sufficiently longer than the TTL for the zone, say 2 x TTL, then rename the *next* key to be the *curr* key. Resign using just this key. This gives time for DNS servers to catch up with the new key before the old one is removed. ``` -------------------------------- ### Key Rolling Phases Source: https://github.com/gene-git/dns_tools/blob/master/Docs/README.rst The key rolling process is divided into two phases to ensure a smooth transition. Phase 1 involves creating a new 'next' key and signing the zone files with both the current and new keys. Phase 2, after a sufficient waiting period (e.g., 2x TTL), renames the 'next' key to 'curr' and resigns the zone files using only the new key. ```python * **Phase 1** Create a new key, called *next*, then sign the zone files using this key as well as the current key (we call this *curr* for short). With the records now double signed the existing key remains valid. * **Phase 2** After a period sufficiently longer than the TTL for the zone, say 2 x TTL, then rename the *next* key to be the *curr* key. Resign using just this key. This gives time for DNS servers to catch up with the new key before the old one is removed. ``` -------------------------------- ### resign.sh Script Updates Source: https://github.com/gene-git/dns_tools/blob/master/Docs/Changelog.rst This snippet details changes to the resign.sh script, including the addition of optional arguments for serial bumping and domain list specification. It also notes improvements in handling include lines during signing. ```bash resign.sh accept --serial-bump, -s, --serial_bump Do not expand $INCLUDE when in a comment line before signing resign.sh now has optional argument --serial-bump resign.sh now takes optional domain list. If none provided then does all domeains in /etc/dns_tool/conf.d/config as previously ``` -------------------------------- ### PKGBUILD Dependency Changes Source: https://github.com/gene-git/dns_tools/blob/master/Docs/Changelog.rst This snippet highlights modifications to the PKGBUILD file, specifically concerning Python dependencies. It notes the removal of 'tomli' for Python versions 3.11 and later, and the addition of 'python-build' for wheel creation. ```bash Remove tomli from depends() in PKGBUILD as not needed for python >= 3.11 PKGBUILD - add dependency on python installer module PKGBUILD: add python-build to makedepends PKGBUILD: build wheel back to using python -m build instead of poetry Simplify Arch PKGBUILD and more closely follow arch guidelines ```