{"id":38241986,"url":"https://github.com/illiliti/eiwd","last_synced_at":"2026-01-17T01:14:49.322Z","repository":{"id":37526861,"uuid":"347807190","full_name":"illiliti/eiwd","owner":"illiliti","description":"iwd without dbus -- maintained fork of original dylanaraps/eiwd","archived":false,"fork":false,"pushed_at":"2024-03-18T14:54:58.000Z","size":10327,"stargazers_count":36,"open_issues_count":0,"forks_count":2,"subscribers_count":7,"default_branch":"master","last_synced_at":"2024-05-08T20:04:14.273Z","etag":null,"topics":["embedded","iwd","no-dbus","suckless"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-2.1","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/illiliti.png","metadata":{"files":{"readme":"README","changelog":"ChangeLog","contributing":null,"funding":null,"license":"COPYING","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":"AUTHORS","dei":null}},"created_at":"2021-03-15T02:04:54.000Z","updated_at":"2024-02-18T06:46:02.000Z","dependencies_parsed_at":"2023-12-07T10:34:17.260Z","dependency_job_id":"82edfffc-21af-41c1-b99e-49db78db0440","html_url":"https://github.com/illiliti/eiwd","commit_stats":{"total_commits":6876,"total_committers":72,"mean_commits":95.5,"dds":0.6796102385107621,"last_synced_commit":"6b51f0972e9ec0fa1904fbc70433deb2cd640fea"},"previous_names":[],"tags_count":98,"template":false,"template_full_name":null,"purl":"pkg:github/illiliti/eiwd","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/illiliti%2Feiwd","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/illiliti%2Feiwd/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/illiliti%2Feiwd/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/illiliti%2Feiwd/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/illiliti","download_url":"https://codeload.github.com/illiliti/eiwd/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/illiliti%2Feiwd/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28491205,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-17T00:50:05.742Z","status":"ssl_error","status_checked_at":"2026-01-17T00:43:11.982Z","response_time":107,"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":["embedded","iwd","no-dbus","suckless"],"created_at":"2026-01-17T01:14:48.866Z","updated_at":"2026-01-17T01:14:49.314Z","avatar_url":"https://github.com/illiliti.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"Wireless daemon for Linux\n*************************\n\nCopyright (C) 2013-2019  Intel Corporation. All rights reserved.\n\n\nCompilation and installation\n============================\n\nIn order to compile the source code you need following software packages:\n\t- GCC compiler\n\t- GNU C library\n\t- Embedded Linux library\n\t- readline (command line client)\n\nTo configure run:\n\t./configure --prefix=/usr\n\nConfigure automatically searches for all required components and packages.\n\nTo compile and install run:\n\tmake \u0026\u0026 make install\n\n\nEmbedded Linux library\n======================\n\nIn order to compile the daemon and control utility the development version\nof Embedded Linux library is required to be present. The development\nrepositories can be found here:\n\n\tgit://git.kernel.org/pub/scm/libs/ell/ell.git\n\thttps://kernel.googlesource.com/pub/scm/libs/ell/ell.git\n\nThe build systems requires that the Embedded Linux library source code\nis available on the same top level directory as the Wireless daemon\nsource code:\n\n\t.\n\t|--- ell\n\t|    |--- ell\n\t|    `--- unit\n\t`--- iwd\n\t     |--- src\n\t     `--- client\n\nIt is not required to build or install Embedded Linux library. The build\nwill happen when building the Wireless daemon and it will then be linked\ninternally.\n\nWhen using --enable-external-ell build option, it is not required that the\nEmbedded Linux library source code is available in the top level directory.\n\nThe tarballs include a copy of the Embedded Linux library source files. When\nbuilding from the tarballs, then it is not required to have the library\nsources available in the top level directory.\n\n\nManual pages\n============\n\nThe manual pages are generated from reStructuredText markup source files\nduring the normal build process. The generation requires the rst2man utility\nfrom Python Docutils project. If rst2man is for some reason not available,\nusing --disable-manual-pages will skip the manual pages generation and\ninstallation.\n\nWhen building from the tarballs, a copy of the generated manual pages is\nincluded and the rst2man utility is actually not needed.\n\n\nConfiguration and options\n=========================\n\nThe configuration system provides switches to disable certain build time\nconfiguration options which are generally useful and enabled by default:\n\n\t--disable-daemon\n\n\t\tDisable installation of Wireless daemon\n\n\t\tBy default the Wireless daemon binary iwd is enabled and\n\t\tplaced into --libexecdir directory.\n\n\t--disable-client\n\n\t\tDisable installation of Wireless client utility\n\n\t\tBy default the Wireless client binary iwctl is enabled\n\t\tand place into --bindir directory.\n\n\t--disable-monitor\n\n\t\tDisable installation of Wireless monitor utility\n\n\t\tBy default the Wireless monitor binary iwmon is enabled\n\t\tand place into --bindir directory.\n\n\t--disable-dbus-policy\n\n\t\tDisable installation of D-Bus system policy configuration\n\n\t\tBy default the accompanying D-Bus policy file will be\n\t\tinstalled in the D-Bus data directory. The location of\n\t\tthat directory will be automatically detected or can be\n\t\tmanually configured via the --with-dbus-datadir option.\n\n\t\tThe D-Bus policy is required for daemons to gain service\n\t\tname ownership and clients to access them. When disabling\n\t\tthis option, manual installation of D-Bus polices is\n\t\trequired.\n\n\t\tNote: This option affects all D-Bus policy configurations.\n\n\t--disable-systemd-service\n\n\t\tDisable installation of systemd service configuration\n\n\t\tBy default the accompanying systemd service unit with\n\t\tD-Bus autostart configuration will be installed. The\n\t\tlocations will be automatically detected or can be\n\t\tmanually configured via --with-dbus-busdir option\n\t\tand --with-systemd-unitdir option.\n\n\t\tUsing systemd is optional, but highly recommended. When\n\t\tdisabling this option, manual installation is required.\n\n\t\tNote: This option affects all systemd unit setups.\n\n\t--disable-manual-pages\n\n\t\tDisable generation and installation of manual pages\n\n\t\tBy default all available manual pages will be generated\n\t\tand installed. When disabling this options, no manual\n\t\tpages are installed.\n\n\t\tNote: This options affects all manual pages.\n\nWhen building for a system that wants to use wireless technology, disabling\nany of the above options makes only limited sense. It may break the general\nsetup and usability for wireless connections.\n\nThe configuration system provides switches for optional build time features\nthat can be enabled if the functionality is required:\n\n\t--enable-external-ell\n\n\t\tEnable usage of external Embedded Linux library\n\n\t\tThis allows using an externally installed Embedded Linux\n\t\tlibrary instead of using the internal copy of ELL.\n\n\t\tSince the public API of Embedded Linux library is not yet\n\t\tstable, the usage of the internal ELL copy is preferred.\n\n\t--enable-wired\n\n\t\tEnable installation of Ethernet authentication daemon\n\n\t\tThis allows enabling the Ethernet daemon binary ead which\n\t\tis then placed into --libexecdir directory.\n\n\t\tWith this option the support for 802.1x for wired Ethernet\n\t\tconnections can be enabled. It provides its own D-Bus\n\t\tpolicy and systemd configuration.\n\n\t--enable-hwsim\n\n\t\tEnable installation of Wireless simulation utility\n\n\t\tThis allows enabling the Simulation daemon binary hwsim\n\t\twhich is then placed into --bindir directory.\n\n\t\tWith this utility and mac80211_hwim kernel module the\n\t\tsimulation of 802.11 networks can be tested. It provides\n\t\tits own D-Bus policy configuration.\n\n\t\tThis utility is only useful for developers and should not\n\t\tbe considered for general installation. For this reason\n\t\tno systemd configuration is provided.\n\n\t--enable-tools\n\n\t\tEnable compilation of various testing utilities\n\n\t\tThis enables building of all utilities that are however\n\t\tnot installed and only useful during development.\n\n\t--enable-ofono\n\n\t\tEnable support for oFono SIM authentication\n\n\t\tNote: With --disable-daemon this option is ignored\n\n\nNetlink monitoring\n==================\n\nThe included iwmon utility can be used to monitor the 802.11 subsystem\ngeneric netlink commands and events. It uses the nlmon kernel driver\nfrom Linux 3.10 and later. On startup network monitor interface named\nnamed 'nlmon' is created unless another interface name is given on the\ncommand line. If the monitor interface was created by the iwmon utility,\nit will be removed on program exit.\n\nManually the monitor interface can be created using the following\ncommands:\n\n\tip link add name nlmon type nlmon\n\tip link set dev nlmon allmulticast on\n\tip link set dev nlmon up\n\nIt is possible to create netlink traces in PCAP format using tcpdump\nand then read them via iwmon utility:\n\n\ttcpdump -i nlmon -w trace-file.pcap\n\nThe resulting PCAP files will use Linux cooked packet format containing\npackets with ARPHRD_NETLINK type. They can be read using iwmon:\n\n\tiwmon -r trace-file.pcap\n\nAt this time iwmon is not able to write PCAP files by itself. This might\nchange in future versions.\n\nWhen also the authentication protocol traffic on port 0x888e (ETH_P_PAE)\nis needed, then a second capture is required:\n\n\ttcpdump -i any 'ether proto 0x888e' -w trace-pae.pcap\n\nIt is possible to combine these two PCAP files using the mergecap utility\nand create a combined trace file:\n\n\tmergecap -F pcap -w trace.pcap trace-file.pcap trace-pae.pcap\n\nThis will create a trace.pcap file that includes the complete picture\nof nl80211 netlink traffic and authentication messages. All packets are\nmerged in chronological order based on timestamps.\n\nUnfortunately it is not possible to instruct tcpdump filtering to do\nthis in a single capture. Post-processing of the PCAP files is required\nat the moment.\n\n\nSimulating devices\n==================\n\nThe Linux driver mac80211_hwsim provides the functionality to simulate\nWireless devices using fake virtual air. Just load the module.\n\n\tmodprobe mac80211_hwsim radios=0\n\nProviding the radios=0 is important since otherwise it starts out with\ntwo new Wireless radios by default.\n\nWith the provided hwsim utility it is now possible to add and remove\nvirtual radio devices.\n\n\thwsim --create --keep\n\thwsim --destroy=\u003cradio-id\u003e\n\nThe radio id assigned to each virtual device is its internal id used\nby the Wireless device.\n\n\nInformation\n===========\n\nMailing list:\n\thttps://lists.linux.dev/\n\thttps://lore.kernel.org/iwd/\n\nIRC:\n\tirc://irc.oftc.net/#iwd\n\nWiki:\n\thttps://iwd.wiki.kernel.org/\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Filliliti%2Feiwd","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Filliliti%2Feiwd","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Filliliti%2Feiwd/lists"}