{"id":34147548,"url":"https://github.com/shtirlic/go-iwd","last_synced_at":"2026-03-10T20:01:57.503Z","repository":{"id":242992253,"uuid":"799129705","full_name":"shtirlic/go-iwd","owner":"shtirlic","description":"go-iwd Go binding for iwd","archived":false,"fork":false,"pushed_at":"2024-05-13T11:19:32.000Z","size":10,"stargazers_count":1,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-12-17T18:44:39.455Z","etag":null,"topics":["api","binding","bindings","d-bus","go","golang","iwd","network","wifi","wireless"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/shtirlic.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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}},"created_at":"2024-05-11T09:02:29.000Z","updated_at":"2024-06-06T02:59:29.000Z","dependencies_parsed_at":"2024-06-06T04:52:23.902Z","dependency_job_id":"7335b7d3-4a09-4d93-9467-251b19b9d879","html_url":"https://github.com/shtirlic/go-iwd","commit_stats":null,"previous_names":["shtirlic/go-iwd"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/shtirlic/go-iwd","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shtirlic%2Fgo-iwd","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shtirlic%2Fgo-iwd/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shtirlic%2Fgo-iwd/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shtirlic%2Fgo-iwd/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/shtirlic","download_url":"https://codeload.github.com/shtirlic/go-iwd/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shtirlic%2Fgo-iwd/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30351731,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-10T15:55:29.454Z","status":"ssl_error","status_checked_at":"2026-03-10T15:54:58.440Z","response_time":106,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["api","binding","bindings","d-bus","go","golang","iwd","network","wifi","wireless"],"created_at":"2025-12-15T04:25:36.021Z","updated_at":"2026-03-10T20:01:57.494Z","avatar_url":"https://github.com/shtirlic.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# go-iwd Go binding for iwd\n\n__go-iwd__ is a Go D-BUS binding for iNet Wireless Daemon [iwd](https://iwd.wiki.kernel.org/) API.\n\n\u003e [!NOTE]\n\u003e Please keep in mind that project is under active development.\n\n## Getting started\n\n### Prerequisites\n\ngo-iwd requires [Go](https://go.dev/) version [1.22](https://go.dev/doc/devel/release#go1.22.0) or above.\n\n### Getting go-iwd\n\nWith [Go's module support](https://go.dev/wiki/Modules#how-to-use-modules), `go [build|run|test]` automatically fetches the necessary dependencies when you add the import in your code:\n\n```sh\nimport \"github.com/shtirlic/go-iwd\"\n```\n\nAlternatively, use `go get`:\n\n```sh\ngo get -u github.com/shtirlic/go-iwd\n```\n\n## Usage\n\n```go\nfunc main() {\n  i, err := iwd.NewIwd()\n  if err != nil {\n    panic(err)\n  }\n  defer i.Close()\n\n  // Get iwd Stations\n  stations, err := i.Stations()\n  if err != nil {\n    panic(err)\n  }\n\n  // Disconnect from network\n  for _, station := range stations {\n    station.Disconnect()\n  }\n\n  // Connect to Known Network\n  for _, station := range stations {\n    if station.State == iwd.ConnectedState {\n      return\n    }\n    nets, _ := station.GetOrderedNetworks()\n    for _, net := range nets {\n      net.Connect()\n    }\n  }\n\n  // Output iwd Station diagnostic info\n  fmt.Println(station[0].GetDiagnostics())\n}\n```\n\n#### Examples\n\nA number of ready-to-run examples demonstrating various use cases of go-iwd are available in the [go-iwd examples](https://github.com/shtirlic/go-iwd/tree/main/examples) dir.\n\n## Features\n- [x] Minimal dependencies\n- [x] Easy API access\n- [ ] Full API support + Experimental iwd API\n- [ ] TUI Client\n- [ ] API Tests\n\n### IWD API\n- [x] Adapter\n- [x] Daemon\n- [x] Device\n- [x] KnowNetwork\n- [x] Network\n- [x] Station\n- [x] Station Diagnostic\n- [x] WSC\n- [ ] Access Point\n- [ ] Adhoc\n- [ ] Agent\n- [ ] Device Provisioning\n- [ ] RadioManager\n- [ ] RuleManager\n- [ ] P2P (peer, service)\n- [ ] Station Debug\n- [ ] IWD specific error handling\n- [ ] D-BUS Signals\n\n## iwd Architecture\n\n![iwd Architecture](https://iwd.wiki.kernel.org/_media/wiki/iwd-architecture.png)\n\n## Links\n- [iwd Project page](https://iwd.wiki.kernel.org/)\n- [iwd Git repo](https://git.kernel.org/pub/scm/network/wireless/iwd.git)\n- [iwd ArchWiki](https://wiki.archlinux.org/title/iwd)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fshtirlic%2Fgo-iwd","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fshtirlic%2Fgo-iwd","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fshtirlic%2Fgo-iwd/lists"}