{"id":29568888,"url":"https://github.com/djotaku/dreamhost_dns_go","last_synced_at":"2026-07-04T08:31:51.499Z","repository":{"id":149474573,"uuid":"602769784","full_name":"djotaku/dreamhost_dns_go","owner":"djotaku","description":"My Dreamhost DNS program, but in Go this time!","archived":false,"fork":false,"pushed_at":"2024-07-20T22:26:09.000Z","size":56,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-10-29T11:43:32.420Z","etag":null,"topics":["dns","dreamhost-api","dreamhost-ddns","dreamhost-dns"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/djotaku.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2023-02-16T22:45:32.000Z","updated_at":"2024-07-20T22:23:50.000Z","dependencies_parsed_at":null,"dependency_job_id":"0eea1d8d-e83d-4b68-b374-4db03103f698","html_url":"https://github.com/djotaku/dreamhost_dns_go","commit_stats":null,"previous_names":[],"tags_count":12,"template":false,"template_full_name":null,"purl":"pkg:github/djotaku/dreamhost_dns_go","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/djotaku%2Fdreamhost_dns_go","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/djotaku%2Fdreamhost_dns_go/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/djotaku%2Fdreamhost_dns_go/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/djotaku%2Fdreamhost_dns_go/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/djotaku","download_url":"https://codeload.github.com/djotaku/dreamhost_dns_go/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/djotaku%2Fdreamhost_dns_go/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35115741,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-04T02:00:05.987Z","response_time":113,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["dns","dreamhost-api","dreamhost-ddns","dreamhost-dns"],"created_at":"2025-07-19T01:07:40.683Z","updated_at":"2026-07-04T08:31:51.475Z","avatar_url":"https://github.com/djotaku.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Dreamhost DNS\n\nThis is a Go program for updating the IP addresses associated with your Dreamhost domain and subdomain names if you do not have a static IP address. (In other words, this makes Dreamhost a Dyanmic DNS provider)\n\nRun this script on whatever computer is functioning as the server. (ie the one behind the ever-changing IP address)\n\nYou will need a Dreamhost API key. (See step 2 on [this page](https://help.dreamhost.com/hc/en-us/articles/4407354972692-Connecting-to-the-DreamHost-API))\n\nCreate a settings.json file that looks like this:\n\n```json\n{\n  \"api_key\": \"myapikey\",\n  \"domains\": [\"sub.domain1.com\", \"sub.domain2.com\", \"sub2.domain1.com\"]\n}\n```\nObviously replace \"myapikey\" with whatever you generated by following the instructions linked above. The domains are all the domains that will be pointed to this one IP Address. \n\nThe settings.json file should be put into the xdg directory for your system. The output of the program will tell you where that is. On Linux/Unix, for example, this is $HOME/.config/dreamhostdns/settings.json\n\nFrom the releases section of the repository you can grab the latest binary to run. Binaries are generated for Windows on x86-64 and Mac and Linux on x86-64 and ARM.\n\nRun dreamhost_dns_go and it will generate minimal output as well as putting logs in the xdg DataFile location. On Linux that's $HOME/.local/share/dreamhostdns/dnsupdates.log. (Very useful if you are running as a cron job or on a systemd timer)\n\nIf you wish to have the log output *also* on the commandline, then run dreamhost_dns_go -v\n\n# Why Go?\n\nOriginally I wrote this program in [Python](https://github.com/djotaku/dreamhost_dns), but every time I upgraded to a new version of Python, my virtual environment broke. That was really annoying for a script that I always want to automatically run via a cron job and not have to think about whether it was working correctly. Since Go is a compiled language it doesn't require virtual environments in order to run without polluting the system files.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdjotaku%2Fdreamhost_dns_go","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdjotaku%2Fdreamhost_dns_go","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdjotaku%2Fdreamhost_dns_go/lists"}