{ inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; outputs = { nixpkgs, self, }: let pkgs = nixpkgs; lib = pkgs.lib; mkAllSystems = lib.genAttrs [ "aarch64-darwin" "aarch64-linux" "i686-linux" "x86_64-darwin" "x86_64-linux" ]; in { formatter = mkAllSystems (system: pkgs.legacyPackages.${system}.alejandra); devShells = mkAllSystems (system: let pkgs = nixpkgs.legacyPackages.${system}; in { default = pkgs.mkShell { nativeBuildInputs = [pkgs.dnscontrol]; shellHook = # Auth Token '' echo "Bitte einen deSEC-Auth-Token eingeben:" read -rs DESEC_AUTH_TOKEN export DESEC_AUTH_TOKEN '' # Mini-Anleitung + '' echo "" echo "Prüfen: dnscontrol preview" echo "Ausrollen: dnscontrol push" echo "Zone-Dateien generieren: generate-zone-file [domain]" echo "" '' # Zonen-Datei generieren + '' generate-zone-file () { if [[ "$1" != "" ]]; then dnscontrol get-zone --format=zone --out $1.zone' desec - $1 else echo "Bitte eine valide Domain eingeben" fi }; ''; }; }); }; }