Skip to content

examples/networking/gnrc: remove gnrc prefix from folder names#21826

Merged
mguetschow merged 4 commits intoRIOT-OS:masterfrom
benpicco:examples/networking/gnrc
Oct 29, 2025
Merged

examples/networking/gnrc: remove gnrc prefix from folder names#21826
mguetschow merged 4 commits intoRIOT-OS:masterfrom
benpicco:examples/networking/gnrc

Conversation

@benpicco
Copy link
Copy Markdown
Contributor

Contribution description

Since the directory restuturing it has always annoyed me having to type gnrc/gnrc_networking.
Remove the gnrc_ prefix from folders that are already in the gnrc/ folder, so now typing gnrc/networking is much more tab-completion friendly.

Testing procedure

Only renaming, CI should spot hard-coded paths.

Issues/PRs references

@github-actions github-actions bot added Area: doc Area: Documentation Area: examples Area: Example Applications Area: Kconfig Area: Kconfig integration labels Oct 29, 2025
@crasbe crasbe added CI: ready for build If set, CI server will compile all applications for all available boards for the labeled PR Type: cleanup The issue proposes a clean-up / The PR cleans-up parts of the codebase / documentation labels Oct 29, 2025
@riot-ci
Copy link
Copy Markdown

riot-ci commented Oct 29, 2025

Murdock results

✔️ PASSED

606f9bd examples/networking/dtls/dtls-echo: fix copy & paste error in readme

Success Failures Total Runtime
10552 0 10552 09m:20s

Artifacts

Copy link
Copy Markdown
Contributor

@crasbe crasbe left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I grepped the sourcetree and accidentally found a lot of paths that are already incorrect:

cbuec@W11nMate:~/RIOTstuff/riot-guides/RIOT$ grep -Rnw . -e "networking/gnrc_.*"
./examples/networking/misc/lwm2m/README.md:92:[border router](https://github.com/RIOT-OS/RIOT/tree/master/examples/networking/gnrc_border_router).
./examples/networking/coap/gcoap/README-slip.md:67:[1]: https://github.com/RIOT-OS/RIOT/tree/master/examples/networking/gnrc_border_router    "SLIP instructions"
./examples/advanced/suit_update/README.hardware.md:87:[gnrc_border_router](https://github.com/RIOT-OS/RIOT/tree/master/examples/networking/gnrc_border_router)
./examples/advanced/suit_update/README.hardware.md:90:    $ make BOARD=<BR board> -C examples/networking/gnrc_border_router flash

Edit: obsolete.
But with the right command I found a lot more correct paths that have to be migrated:

cbuec@W11nMate:~/RIOTstuff/riot-guides/RIOT$ grep -Rnw . -e "networking/gnrc/gnrc_.*"
./dist/tools/zep_dispatch/README.md:120:    USEMODULE=gnrc_rpl make -C examples/networking/gnrc/gnrc_border_router all term
./dist/tools/zep_dispatch/README.md:152:    USE_ZEP=1 make -C examples/networking/gnrc/gnrc_networking all term
./dist/tools/zep_dispatch/README.md:153:    USE_ZEP=1 make -C examples/networking/gnrc/gnrc_networking all term
./dist/tools/dhcpv6-pd_ia/README.md:25:[`gnrc_border_router` example]: ../../../examples/networking/gnrc/gnrc_border_router
./dist/tools/desvirt/README.desvirt.md:88:riotnative     : Start the RIOT: socat EXEC:'/home/pschmerzl/RIOT/examples/networking/gnrc/gnrc_networking/bin/native/gnrc_networking.elf line4_1',end-close,stderr,pty TCP-L:4711,reuseaddr,fork
./dist/tools/desvirt/README.desvirt.md:91:riotnative     : Start the RIOT: socat EXEC:'/home/pschmerzl/RIOT/examples/networking/gnrc/gnrc_networking/bin/native/gnrc_networking.elf line4_0',end-close,stderr,pty TCP-L:4712,reuseaddr,fork
./dist/tools/desvirt/README.desvirt.md:94:riotnative     : Start the RIOT: socat EXEC:'/home/pschmerzl/RIOT/examples/networking/gnrc/gnrc_networking/bin/native/gnrc_networking.elf line4_3',end-close,stderr,pty TCP-L:4713,reuseaddr,fork
./dist/tools/desvirt/README.desvirt.md:97:riotnative     : Start the RIOT: socat EXEC:'/home/pschmerzl/RIOT/examples/networking/gnrc/gnrc_networking/bin/native/gnrc_networking.elf line4_2',end-close,stderr,pty TCP-L:4714,reuseaddr,fork
./dist/tools/vagrant/freebsd/README.md:42:make -C examples/networking/gnrc/gnrc_networking all -j16
./dist/tools/vagrant/freebsd/README.md:43:make -C examples/networking/gnrc/gnrc_networking term
./cpu/esp32/doc.md:1691:make -C examples/networking/gnrc/gnrc_networking BOARD=...
./cpu/esp32/doc.md:1748:make -C examples/networking/gnrc/gnrc_networking BOARD=...
./cpu/esp32/doc.md:1800:make -C examples/networking/gnrc/gnrc_networking BOARD=...
./cpu/esp8266/doc.md:721:make -C examples/networking/gnrc/gnrc_networking BOARD=...
./cpu/esp8266/doc.md:772:make -C examples/networking/gnrc/gnrc_networking BOARD=...
./cpu/esp_common/esp-wifi/doc.md:49:make -C examples/networking/gnrc/gnrc_networking BOARD=...
./cpu/esp_common/esp-wifi/doc.md:100:make -C examples/networking/gnrc/gnrc_networking BOARD=...
./doc/guides/getting-started/building_example.mdx:72:make -C examples/networking/gnrc/gnrc_networking/ term \
./doc/starlight/src/content/docs/getting-started/building_example.mdx:72:make -C examples/networking/gnrc/gnrc_networking/ term \
./examples/networking/gnrc/border_router/README.md:126:For instance, if you use the [`gnrc_networking`](https://github.com/RIOT-OS/RIOT/tree/master/examples/networking/gnrc/gnrc_networking) example on the mote, you can
./examples/networking/coap/gcoap/README.md:96:[2]: https://github.com/RIOT-OS/RIOT/tree/master/examples/networking/gnrc/gnrc_networking    "instructions"
./examples/networking/coap/gcoap/README.md:97:[3]: https://github.com/RIOT-OS/RIOT/tree/master/examples/networking/gnrc/gnrc_border_router    "SLIP instructions"
./examples/README.md:101:| [gnrc_minimal](./networking/gnrc/gnrc_minimal/README.md) | This is a minimalistic example for RIOT's gnrc network stack. |
./examples/README.md:102:| [gnrc_networking](./networking/gnrc/gnrc_networking/README.md) | This example demonstrates the usage of the GNRC network stack in RIOT. |
./examples/README.md:103:| [gnrc_networking_subnets](./networking/gnrc/gnrc_networking_subnets/README.md) | This example demonstrates IPv6 subnet auto-configuration for networks on a tree topology. |
./examples/README.md:104:| [gnrc_border_router](./networking/gnrc/gnrc_border_router/README.md) | Example of `gnrc_border_router` using automatic configuration |
./examples/README.md:105:| [gnrc_lorawan](./networking/gnrc/gnrc_lorawan/README.md) | Send and receive LoRaWAN packets and perform basic LoRaWAN commands |
./pkg/nimble/README.ipv6-over-ble.md:28:First, you compile and flash the `examples/networking/gnrc/gnrc_networking` application to your
./tests/net/gnrc_sixlowpan_frag_sfr_congure_impl/README.md:8:[1]: https://github.com/RIOT-OS/RIOT/tree/master/examples/networking/gnrc/gnrc_networking
./tests/net/gnrc_udp/README.md:11:[1]: https://github.com/RIOT-OS/RIOT/tree/master/examples/networking/gnrc/gnrc_networking
./tests/riotboot_flashwrite/README.md:30:    $ BOARD=<board> make -C examples/networking/gnrc/gnrc_border_router flash
./boards/feather-m0/doc.md:69:     make BOARD=feather-m0-wifi -C examples/networking/gnrc/gnrc_networking
./boards/feather-m0/doc.md:83:make BOARD=feather-m0-lora -C examples/networking/gnrc/gnrc_lorawan
./boards/openlabs-kw41z-mini/doc.md:60:    cd RIOT/examples/networking/gnrc/gnrc_networking
./drivers/doc.txt:160: * USEMODULE=shield_w5100 make BOARD=arduino-due -C examples/networking/gnrc/gnrc_networking
./drivers/atwinc15x0/doc.txt:171:make BOARD=... -C examples/networking/gnrc/gnrc_networking flash term

@github-actions github-actions bot added Area: tests Area: tests and testing framework Area: pkg Area: External package ports Area: drivers Area: Device drivers Area: BLE Area: Bluetooth Low Energy support Area: tools Area: Supplementary tools Area: boards Area: Board ports Platform: ESP Platform: This PR/issue effects ESP-based platforms Area: cpu Area: CPU/MCU ports labels Oct 29, 2025
@crasbe
Copy link
Copy Markdown
Contributor

crasbe commented Oct 29, 2025

I grepped the sourcetree and accidentally found a lot of paths that are already incorrect:

cbuec@W11nMate:~/RIOTstuff/riot-guides/RIOT$ grep -Rnw . -e "networking/gnrc_.*"
./examples/networking/misc/lwm2m/README.md:92:[border router](https://github.com/RIOT-OS/RIOT/tree/master/examples/networking/gnrc_border_router).
./examples/networking/coap/gcoap/README-slip.md:67:[1]: https://github.com/RIOT-OS/RIOT/tree/master/examples/networking/gnrc_border_router    "SLIP instructions"
./examples/advanced/suit_update/README.hardware.md:87:[gnrc_border_router](https://github.com/RIOT-OS/RIOT/tree/master/examples/networking/gnrc_border_router)
./examples/advanced/suit_update/README.hardware.md:90:    $ make BOARD=<BR board> -C examples/networking/gnrc_border_router flash

Perhaps you can migrate the four incorrect paths too.

@crasbe
Copy link
Copy Markdown
Contributor

crasbe commented Oct 29, 2025

Found some more:

cbuec@W11nMate:~/RIOTstuff/riot-guides/RIOT$ grep -IRnw . -e gnrc_minimal | grep -v release-notes.txt
./examples/networking/gnrc/minimal/README.md:1:# gnrc_minimal example
./examples/networking/gnrc/minimal/Makefile:2:APPLICATION = gnrc_minimal
./examples/README.md:101:| [gnrc_minimal](./networking/gnrc/minimal/README.md) | This is a minimalistic example for RIOT's gnrc network stack. |
cbuec@W11nMate:~/RIOTstuff/riot-guides/RIOT$ grep -IRnw . -e gnrc_networking | grep -v release-notes.txt
./dist/tools/zep_dispatch/README.md:108:The `gnrc_border_router` and `gnrc_networking` can serve as a starting point for those.
./dist/tools/zep_dispatch/README.md:150:Now start as many `gnrc_networking` nodes as you have mesh nodes defined in your topology file:
./dist/tools/desvirt/README.desvirt.md:88:riotnative     : Start the RIOT: socat EXEC:'/home/pschmerzl/RIOT/examples/networking/gnrc/networking/bin/native/gnrc_networking.elf line4_1',end-close,stderr,pty TCP-L:4711,reuseaddr,fork
./dist/tools/desvirt/README.desvirt.md:91:riotnative     : Start the RIOT: socat EXEC:'/home/pschmerzl/RIOT/examples/networking/gnrc/networking/bin/native/gnrc_networking.elf line4_0',end-close,stderr,pty TCP-L:4712,reuseaddr,fork
./dist/tools/desvirt/README.desvirt.md:94:riotnative     : Start the RIOT: socat EXEC:'/home/pschmerzl/RIOT/examples/networking/gnrc/networking/bin/native/gnrc_networking.elf line4_3',end-close,stderr,pty TCP-L:4713,reuseaddr,fork
./dist/tools/desvirt/README.desvirt.md:97:riotnative     : Start the RIOT: socat EXEC:'/home/pschmerzl/RIOT/examples/networking/gnrc/networking/bin/native/gnrc_networking.elf line4_2',end-close,stderr,pty TCP-L:4714,reuseaddr,fork
./examples/networking/dtls/dtls-echo/README.md:33:Boards that do not support the `../gnrc_networking` example are included
./examples/networking/misc/sniffer/tools/README.md:102:where one of them runs the sniffer application and the others run the `gnrc_networking` application.
./examples/networking/misc/sniffer/tools/README.md:107:Then you can dump or observe the traffic generated by the other nodes running the `gnrc_networking`
./examples/networking/gnrc/minimal/README.md:8:(IPHC), since this example does not include it. In the `gnrc_networking`
./examples/networking/gnrc/minimal/README.md:15:reduction of memory consumption in comparison to the `gnrc_networking` example
./examples/networking/gnrc/networking/README.md:1:# gnrc_networking example
./examples/networking/gnrc/networking/README.md:33:Now you can start the `gnrc_networking` example by invoking `make term`.
./examples/networking/gnrc/networking/Makefile:2:APPLICATION = gnrc_networking
./examples/networking/gnrc/networking_subnets/Makefile:2:APPLICATION = gnrc_networking-subnets
./examples/networking/gnrc/border_router/README.md:126:For instance, if you use the [`gnrc_networking`](https://github.com/RIOT-OS/RIOT/tree/master/examples/networking/gnrc/networking) example on the mote, you can
./examples/networking/gnrc/border_router/README.md:315:communication with other 6LoWPAN nodes. See also the `gnrc_networking` example
./examples/networking/coap/gcoap/README.md:13:the gnrc_networking example.
./examples/README.md:102:| [gnrc_networking](./networking/gnrc/networking/README.md) | This example demonstrates the usage of the GNRC network stack in RIOT. |
./.github/ISSUE_TEMPLATE/bug_report.md:19:Example: Cannot build gnrc_networking application for samr21-xpro board.
./.github/ISSUE_TEMPLATE/bug_report.md:31:Example: The gnrc_networking application builds on samr21-xpro.
./tests/net/gnrc_sixlowpan_frag_sfr_congure_impl/README.md:3:This test is largely based on the [`gnrc_networking`][1] example but is changed
./tests/net/gnrc_udp/README.md:3:This test is largely based on the [`gnrc_networking`][1] example but uses a
./boards/openlabs-kw41z-mini/doc.md:58:# build and flash the gnrc_networking example
cbuec@W11nMate:~/RIOTstuff/riot-guides/RIOT$ grep -IRnw . -e gnrc_border_router | grep -v release-notes.txt
./dist/tools/zep_dispatch/README.md:108:The `gnrc_border_router` and `gnrc_networking` can serve as a starting point for those.
./dist/tools/zep_dispatch/README.md:114:To run the ZEP dispatcher with a custom topology, simply run it before the `gnrc_border_router`
./dist/tools/dhcpv6-pd_ia/README.md:4:support ([Kea]) to provide a prefix for the [`gnrc_border_router` example]'s
./dist/tools/dhcpv6-pd_ia/README.md:25:[`gnrc_border_router` example]: ../../../examples/networking/gnrc/border_router
./examples/networking/misc/benchmark_udp/README.md:13:used the `gnrc_border_router` example and want to run the benchmark on a 6LoWPAN node.
./examples/networking/gnrc/border_router/README.md:1:# gnrc_border_router using automatic configuration
./examples/networking/gnrc/border_router/README.md:95:To compile and flash `gnrc_border_router` to your board:
./examples/networking/gnrc/border_router/README.md:173:# gnrc_border_router with manual config
./examples/networking/gnrc/border_router/README.md:211:Then you can flash the `gnrc_border_router` example on your board:
./examples/networking/gnrc/border_router/Makefile:2:APPLICATION = gnrc_border_router
./examples/networking/coap/gcoap/README-slip.md:1:`Makefile.slip` assumes use of a SAMR21 Xplained Pro. This file describes how we use the board as a border router. See the [SLIP instructions][1] for the gnrc_border_router example for more background.
./examples/networking/coap/gcoap/README.md:18:which are based on the [SLIP instructions][3] for the gnrc_border_router
./examples/advanced/suit_update/README.hardware.md:87:[gnrc_border_router](https://github.com/RIOT-OS/RIOT/tree/master/examples/networking/gnrc/border_router)
./examples/README.md:104:| [gnrc_border_router](./networking/gnrc/border_router/README.md) | Example of `gnrc_border_router` using automatic configuration |

cbuec@W11nMate:~/RIOTstuff/riot-guides/RIOT$ grep -IRnw . -e gnrc_lorawan | grep -v release-notes.txt
...
./examples/README.md:105:| [gnrc_lorawan](./networking/gnrc/lorawan/README.md) | Send and receive LoRaWAN packets and perform basic LoRaWAN commands |
...
cbuec@W11nMate:~/RIOTstuff/riot-guides/RIOT$ grep -IRnw . -e gnrc_networking_subnets | grep -v release-notes.txt
./examples/README.md:103:| [gnrc_networking_subnets](./networking/gnrc/networking_subnets/README.md) | This example demonstrates IPv6 subnet auto-configuration for networks on a tree topology. |

@benpicco
Copy link
Copy Markdown
Contributor Author

benpicco commented Oct 29, 2025

The applications do keep their names, only the folders got renamed from gnrc/gnrc_networking -> gnrc/networking. So the app name is still gnrc_networking, not networking.

@crasbe
Copy link
Copy Markdown
Contributor

crasbe commented Oct 29, 2025

That would leave this one:

./examples/networking/dtls/dtls-echo/README.md:33:Boards that do not support the `../gnrc_networking` example are included

Although that looks more like a copy&paste error and should probably be dtls-echo.

Edit: While at it, I don't know why the README mentions the cc2650stk, that is not actually part of the Makefile.ci.

Copy link
Copy Markdown
Contributor

@crasbe crasbe left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Soft-ACK, although I'd like to get a second opinion perhaps from @AnnsAnns and/or @mguetschow who did work on the example migration.

Copy link
Copy Markdown
Contributor

@mguetschow mguetschow left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good idea, I've also been slightly annoyed by this before. Haven't tested and grepped for missing parts myself, but trusting you too on this :)

@mguetschow mguetschow added this pull request to the merge queue Oct 29, 2025
Merged via the queue into RIOT-OS:master with commit fed2108 Oct 29, 2025
28 checks passed
@benpicco benpicco deleted the examples/networking/gnrc branch October 30, 2025 12:25
@benpicco benpicco added this to the Release 2025.10 milestone Dec 3, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Area: BLE Area: Bluetooth Low Energy support Area: boards Area: Board ports Area: cpu Area: CPU/MCU ports Area: doc Area: Documentation Area: drivers Area: Device drivers Area: examples Area: Example Applications Area: Kconfig Area: Kconfig integration Area: pkg Area: External package ports Area: tests Area: tests and testing framework Area: tools Area: Supplementary tools CI: ready for build If set, CI server will compile all applications for all available boards for the labeled PR Platform: ESP Platform: This PR/issue effects ESP-based platforms Type: cleanup The issue proposes a clean-up / The PR cleans-up parts of the codebase / documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants