diff --git a/.gitignore b/.gitignore
index 31f7912bb85818593f4fb220d311186a82ab6002..9ca29895e07e52fc886517ad45eee7efafb1455d 100644
--- a/.gitignore
+++ b/.gitignore
@@ -38,19 +38,6 @@ _sketches.cpp
 # local override files
 Makefile.local
 
-# downloaded package sources
-pkg/ccn-lite/ccn-lite
-pkg/cmsis-dsp/cmsis-dsp
-pkg/libcoap/libcoap
-pkg/libfixmath/libfixmath
-pkg/microcoap/microcoap
-pkg/micro-ecc/micro-ecc
-pkg/oonf_api/oonf_api
-pkg/openwsn/openwsn
-pkg/relic/relic
-pkg/tlsf/tlsf
-pkg/wakaama/wakaama
-
 # Vagrant
 .vagrant
 
diff --git a/pkg/ccn-lite/.gitignore b/pkg/ccn-lite/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..72a81c4664b48e195c05fed771d29bb1227ff4cf
--- /dev/null
+++ b/pkg/ccn-lite/.gitignore
@@ -0,0 +1 @@
+/ccn-lite
diff --git a/pkg/cmsis-dsp/.gitignore b/pkg/cmsis-dsp/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..12a55487a7b981928718016bf4ec7f4a4c27d047
--- /dev/null
+++ b/pkg/cmsis-dsp/.gitignore
@@ -0,0 +1 @@
+/cmsis-dsp
diff --git a/pkg/libcoap/.gitattributes b/pkg/libcoap/.gitattributes
deleted file mode 100644
index 088d50c804b4df4f2a5a826ef52095928e8a617e..0000000000000000000000000000000000000000
--- a/pkg/libcoap/.gitattributes
+++ /dev/null
@@ -1,6 +0,0 @@
-# Ignore whitespace errors inside these patch files by regarding them as binary.
-0001-Add-RIOT-Makefile.patch binary
-0002-Add-config.h.patch binary
-0003-Remove-two-example-programs-in-root.patch binary
-0004-Eliminate-some-compiler-warnings-and-errors.patch binary
-0005-fix-old-style-function-declarations.patch binary
diff --git a/pkg/libcoap/.gitignore b/pkg/libcoap/.gitignore
index 284bb3900b6dd87df643825c5db14d15929bced6..5c84315941b29eeafd18ff3c37ab19676ab35f80 100644
--- a/pkg/libcoap/.gitignore
+++ b/pkg/libcoap/.gitignore
@@ -1 +1 @@
-libcoap
+/libcoap
diff --git a/pkg/micro-ecc/.gitattributes b/pkg/micro-ecc/.gitattributes
deleted file mode 100644
index 48d75058c7527c59049f836f1245444cd32f7ba5..0000000000000000000000000000000000000000
--- a/pkg/micro-ecc/.gitattributes
+++ /dev/null
@@ -1,3 +0,0 @@
-# Ignore whitespace errors inside these patch files by regarding them as binary.
-0001-Add-RIOT-Makefile.patch binary
-0002-Include-RIOT-Hardware-RNG-interface.patch binary
diff --git a/pkg/micro-ecc/.gitignore b/pkg/micro-ecc/.gitignore
index 41c895140f4583d8c91fe1f05dc901cfe61595aa..52dfbcd45c2e67b062c2e6bf09ffec83c7e71e4a 100644
--- a/pkg/micro-ecc/.gitignore
+++ b/pkg/micro-ecc/.gitignore
@@ -1 +1 @@
-micro-ecc
+/micro-ecc
diff --git a/pkg/microcoap/.gitattributes b/pkg/microcoap/.gitattributes
deleted file mode 100644
index c4ca7223ea21e71388baec51ca5d6d31e94b24d4..0000000000000000000000000000000000000000
--- a/pkg/microcoap/.gitattributes
+++ /dev/null
@@ -1,4 +0,0 @@
-# Ignore whitespace errors inside these patch files by regarding them as binary.
-0001-Remove-unneeded-.c-files.patch binary
-0002-Add-RIOT-Makefile.patch binary
-0003-change-flag-from-DEBUG-to-MICROCOAP_DEBUG.patch binary
diff --git a/pkg/microcoap/.gitignore b/pkg/microcoap/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..25dda219d23a330a9217f54dc9db026029b2584e
--- /dev/null
+++ b/pkg/microcoap/.gitignore
@@ -0,0 +1 @@
+/microcoap
diff --git a/pkg/oonf_api/.gitattributes b/pkg/oonf_api/.gitattributes
deleted file mode 100644
index bcf2afc064e87f435bef40f33288141b6f91ab1d..0000000000000000000000000000000000000000
--- a/pkg/oonf_api/.gitattributes
+++ /dev/null
@@ -1,5 +0,0 @@
-# Ignore whitespace errors inside these patch files by regarding them as binary.
-0001-add-RIOT-support.patch binary
-0002-port-tests-to-riot.patch binary
-0003-port-example-to-riot.patch binary
-0004-fix-conflicting-types.patch binary
diff --git a/pkg/oonf_api/.gitignore b/pkg/oonf_api/.gitignore
index d10449eeb0e2ef12d85ca2a8e46d4353e6100f31..9785e26089b87f1f50abf78f7018d6d1a79e4972 100644
--- a/pkg/oonf_api/.gitignore
+++ b/pkg/oonf_api/.gitignore
@@ -1 +1 @@
-oonf_api/
+/oonf_api
diff --git a/pkg/openwsn/.gitattributes b/pkg/openwsn/.gitattributes
deleted file mode 100644
index 0e8c6e8e81880d3bf16ce3c463c997444d15db86..0000000000000000000000000000000000000000
--- a/pkg/openwsn/.gitattributes
+++ /dev/null
@@ -1,6 +0,0 @@
-# Ignore whitespace errors inside these patch files by regarding them as binary.
-0001-Add-RIOT-Makefiles.patch binary
-0002-Add-RIOT-adaption.patch binary
-0003-Fix-old-style-definitions.patch binary
-0004-provide-openserial-dummies.patch binary
-0005-fixes-to-RIOT-adaption.patch binary
diff --git a/pkg/openwsn/.gitignore b/pkg/openwsn/.gitignore
index 4caae7105ab3cae49dc7117bcc7af9d72d84b568..3a3f6627cbc8c0d5ea3fd685007ae6db31663335 100644
--- a/pkg/openwsn/.gitignore
+++ b/pkg/openwsn/.gitignore
@@ -1 +1 @@
-openwsn
\ No newline at end of file
+/openwsn
diff --git a/pkg/relic/.gitignore b/pkg/relic/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..508396776c5dce3760bfde48b02d430c6bac4a94
--- /dev/null
+++ b/pkg/relic/.gitignore
@@ -0,0 +1 @@
+/relic
diff --git a/pkg/tlsf/.gitattributes b/pkg/tlsf/.gitattributes
deleted file mode 100644
index 8ee56e791e02287638dd1f7ea72697d4a120da7a..0000000000000000000000000000000000000000
--- a/pkg/tlsf/.gitattributes
+++ /dev/null
@@ -1,2 +0,0 @@
-# Ignore whitespace errors inside these patch files by regarding them as binary.
-patch.txt binary
diff --git a/pkg/tlsf/.gitignore b/pkg/tlsf/.gitignore
index 58a9b88df597ce4e37b5d48a1d5ac9d15a7817ec..f03bec72a2340d2ec03abc8429ed49e7f0f45a9c 100644
--- a/pkg/tlsf/.gitignore
+++ b/pkg/tlsf/.gitignore
@@ -1 +1,2 @@
 /tlsf-*.zip
+/tlsf
diff --git a/pkg/wakaama/.gitignore b/pkg/wakaama/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..936ad44df27492a696b0dd65e4db033c2ff6b768
--- /dev/null
+++ b/pkg/wakaama/.gitignore
@@ -0,0 +1 @@
+/wakaama