Skip to content
/ gddns Public

A small utility to update dynamic host records on Google domains

Notifications You must be signed in to change notification settings

sworne/gddns

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

gddns

A small utility to update dynamic host records on Google Domains.

Run

Config file

gddns --config /etc/gddns.conf

Manually specified flags

gddns --username <username> --password <pass> --hostname <example.com>

Nix Flakes (https://nixos.wiki/wiki/Flakes)

nix run github:sworne/gddns -- --username <username> --password <pass> --hostname <example.com>

Configure

Via config file /etc/gddns.conf

dryrun = true
hostname = "example.com"
interface = "eth0"
ipv6 = false
offline = false
password = "pass1234"
password-file = "/var/run/secret"
url = "https://domains.google.com/checkip"
username = "user1"

Via NixOS module (flakes)

flake.nix

{
  inputs.gddns.url = "github:sworne/gddns";
  outputs = { nixpkgs, gddns }: {
    nixosConfigurations.host = nixpkgs.lib.nixosSystem {
      modules = [
        gddns.nixosModules.gddns
      ];
    };
  };
}

configuration.nix

{ config, ... }: {
  services.gddns = {
    enable = true;
    hostname = "example.com";
    username = "username";
    passwordFile = "<path-to-password-file>";
  };
}

Develop

If you're using nix flakes, just clone the repo, cd into the root and run nix develop. Otherwise just follow the standard go guidence (https://go.dev/doc/tutorial/getting-started).

About

A small utility to update dynamic host records on Google domains

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published