diff --git a/Makefile.dep b/Makefile.dep
index bff528ba0b400dd64f30113d2821fd77db981660..4b9636f5f51f98e4fdeb79b48a21489dfec4dc98 100644
--- a/Makefile.dep
+++ b/Makefile.dep
@@ -598,6 +598,11 @@ ifneq (,$(filter l2filter_%,$(USEMODULE)))
   USEMODULE += l2filter
 endif
 
+ifneq (,$(filter gcoap,$(USEMODULE)))
+USEPKG += nanocoap
+USEMODULE += gnrc_sock_udp
+endif
+
 # include package dependencies
 -include $(USEPKG:%=$(RIOTPKG)/%/Makefile.dep)
 
diff --git a/examples/gcoap/Makefile b/examples/gcoap/Makefile
index 1ccbb1890887eb9bec070fe3e4980f6861e63276..8d1513c2d1115a0ad02962bf0f4ef57772986fed 100644
--- a/examples/gcoap/Makefile
+++ b/examples/gcoap/Makefile
@@ -26,17 +26,12 @@ BOARD_BLACKLIST := nrf52dk
 #GCOAP_TOKENLEN = 2
 #CFLAGS += -DGCOAP_TOKENLEN=$(GCOAP_TOKENLEN)
 
-USEPKG += nanocoap
-# Required by nanocoap, but only due to issue #5959.
-USEMODULE += posix
-
 # Include packages that pull up and auto-init the link layer.
 # NOTE: 6LoWPAN will be included if IEEE802.15.4 devices are present
 USEMODULE += gnrc_netdev_default
 USEMODULE += auto_init_gnrc_netif
 # Specify the mandatory networking modules
 USEMODULE += gnrc_ipv6_default
-USEMODULE += gnrc_sock_udp
 USEMODULE += gcoap
 # Additional networking modules that can be dropped if not needed
 USEMODULE += gnrc_icmpv6_echo
diff --git a/examples/gcoap/Makefile.slip b/examples/gcoap/Makefile.slip
index 8cb8a5fec1dc4e8758ebe1ec7d6ba823e2d77f9f..89fd8304d95e6c18a6145f66150255aa6943bb86 100644
--- a/examples/gcoap/Makefile.slip
+++ b/examples/gcoap/Makefile.slip
@@ -42,16 +42,11 @@ INCLUDES += -I$(CURDIR)
 CFLAGS += -DSLIP_UART=$(SLIP_UART)
 CFLAGS += -DSLIP_BAUDRATE=$(SLIP_BAUDRATE)
 
-USEPKG += nanocoap
-# Required by nanocoap, but only due to issue #5959.
-USEMODULE += posix
-
 # Include packages that pull up and auto-init the link layer.
 # NOTE: 6LoWPAN will be included if IEEE802.15.4 devices are present
 USEMODULE += gnrc_netdev_default
 USEMODULE += auto_init_gnrc_netif
 # Specify the mandatory networking modules
-USEMODULE += gnrc_sock_udp
 USEMODULE += gcoap
 # Add a routing protocol
 USEMODULE += gnrc_rpl
diff --git a/tests/unittests/tests-gcoap/Makefile.include b/tests/unittests/tests-gcoap/Makefile.include
index c32f5a9edc71f619a620a7fb9feba39ccd4a2997..8642543bcc3ed5ea0ed6bc2b0b51b1a90750c524 100644
--- a/tests/unittests/tests-gcoap/Makefile.include
+++ b/tests/unittests/tests-gcoap/Makefile.include
@@ -1,8 +1,5 @@
-USEPKG += nanocoap
-
 # Specify the mandatory networking modules
 USEMODULE += gcoap
-USEMODULE += gnrc_sock_udp
 USEMODULE += gnrc_ipv6
 
 USEMODULE += random