diff --git a/boards/arduino-mega2560/dist/debug.sh b/boards/arduino-mega2560/dist/debug.sh
index ddeca9ff2f6a5b4b1d2d7a1c4fe5ab22320233e0..0b10852f20c0dacf071b40d8a98ccce09e7722ac 100755
--- a/boards/arduino-mega2560/dist/debug.sh
+++ b/boards/arduino-mega2560/dist/debug.sh
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 sleep 2
 setsid -w avarice $1 &
 #sleep 2 && $2/avr-gdb-wrapper -ex "target remote localhost:$3" $4
diff --git a/boards/arduino-mega2560/dist/debug_srv.sh b/boards/arduino-mega2560/dist/debug_srv.sh
index 449651afbcf975b9bb41adcc25bd6c798ab503f5..8e7de053ab36eb5fa12252d3a8184fc7d89be82f 100755
--- a/boards/arduino-mega2560/dist/debug_srv.sh
+++ b/boards/arduino-mega2560/dist/debug_srv.sh
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 
 sleep 2
 avarice $1
diff --git a/boards/msba2-common/tools/flashutil.sh b/boards/msba2-common/tools/flashutil.sh
index c91c5f186d6b89336ff498bd7aa286d2b312bacb..517ed3adea341d55931a7d9ca3fe06a249761cce 100755
--- a/boards/msba2-common/tools/flashutil.sh
+++ b/boards/msba2-common/tools/flashutil.sh
@@ -1,4 +1,4 @@
-#/bin/bash
+#/usr/bin/env bash
 
 linux_checkid() {
     udevinfo -a -n ${1} | grep -q "ATTRS{product}==\"${2}\""
diff --git a/boards/pttu/tools/openocd-pttu.sh b/boards/pttu/tools/openocd-pttu.sh
index 6a7da2196d05b96a93a0b405def9ce8ab2083622..572294fee0ac7bdd5110134db3024ec66257c80b 100755
--- a/boards/pttu/tools/openocd-pttu.sh
+++ b/boards/pttu/tools/openocd-pttu.sh
@@ -1,4 +1,4 @@
-#/bin/bash
+#/usr/bin/env bash
 
 if [ $# -le 0 ]; then
     echo "usage: $0 [openocd interface name] [openocd args]" >&2
diff --git a/boards/x86-multiboot-common/dist/link b/boards/x86-multiboot-common/dist/link
index 06bda0ce80b701ea92409455b71876ba4da69ee1..048a8c30508f485441201990663187f1f26158b0 100755
--- a/boards/x86-multiboot-common/dist/link
+++ b/boards/x86-multiboot-common/dist/link
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 
 args=($@)
 
diff --git a/dist/tools/drone-scripts/build_and_test.sh b/dist/tools/drone-scripts/build_and_test.sh
index 7f0071755a0cf4ae71003e21dbc30bee260d2a8f..93eb1d0520716b40ef2e472965c600dc5e8400f1 100755
--- a/dist/tools/drone-scripts/build_and_test.sh
+++ b/dist/tools/drone-scripts/build_and_test.sh
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 # Copyright (C) 2015 Eistec AB
 #
 # This file is subject to the terms and conditions of the GNU Lesser General
diff --git a/dist/tools/eclipsesym/cmdline2xml.sh b/dist/tools/eclipsesym/cmdline2xml.sh
index 05833c241bbc841e714e4e2bc6b49c6073b468e2..731f751f628f3ece79455b9668797bdfd5f16997 100755
--- a/dist/tools/eclipsesym/cmdline2xml.sh
+++ b/dist/tools/eclipsesym/cmdline2xml.sh
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 
 # Copyright (C) 2015 Eistec AB
 #
diff --git a/dist/tools/pr_check/check_labels.sh b/dist/tools/pr_check/check_labels.sh
index fe806db5796dd32c67a6824c5febd3c437ebf564..dbf2c07c610799693410f6c562c5e59ef3ec6025 100644
--- a/dist/tools/pr_check/check_labels.sh
+++ b/dist/tools/pr_check/check_labels.sh
@@ -1,4 +1,4 @@
-#! /bin/bash
+#!/usr/bin/env bash
 #
 # Copyright (C) 2014 Martine Lenders <mlenders@inf.fu-berlin.de>
 #
diff --git a/dist/tools/pr_check/pr_check.sh b/dist/tools/pr_check/pr_check.sh
index feba443cfea6bc4e23083afae3e0b8bcfb20316e..69cb50c88ea30f97efa2a0dfa9f4b233ae7bc5bc 100755
--- a/dist/tools/pr_check/pr_check.sh
+++ b/dist/tools/pr_check/pr_check.sh
@@ -1,4 +1,4 @@
-#! /bin/bash
+#!/usr/bin/env bash
 #
 # Copyright (C) 2014 Martine Lenders <mlenders@inf.fu-berlin.de>
 #
diff --git a/dist/tools/testsuite/build_and_generate_html.sh b/dist/tools/testsuite/build_and_generate_html.sh
index 9a23008adfe25ddfb6ec22a9ffcd6ebc4b0b1197..f4cfab844913e8992b57b90608878ed884f10ff3 100755
--- a/dist/tools/testsuite/build_and_generate_html.sh
+++ b/dist/tools/testsuite/build_and_generate_html.sh
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 
 test -f ~/.buildbot && . ~/.buildbot
 
diff --git a/dist/tools/testsuite/generate_html.sh b/dist/tools/testsuite/generate_html.sh
index 6f80ca76b5ea18c964b6903af1974fc6db055b9b..1357baf6ff5547ccd8315a27971fd55dd17d8579 100755
--- a/dist/tools/testsuite/generate_html.sh
+++ b/dist/tools/testsuite/generate_html.sh
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 
 ROOT=${ROOT:-.}
 TOOLROOT=${TOOLROOT:-${ROOT}}
diff --git a/dist/tools/testsuite/parse_buildlog.sh b/dist/tools/testsuite/parse_buildlog.sh
index bc1bcdeef3fbf3037b4d0374230965fcbd873887..e8cce8ffe2a5d3ffbffc2b0f312bdc8c39a20f00 100755
--- a/dist/tools/testsuite/parse_buildlog.sh
+++ b/dist/tools/testsuite/parse_buildlog.sh
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 
 LOG=${1}
 
diff --git a/dist/tools/testsuite/run_tests.sh b/dist/tools/testsuite/run_tests.sh
index 993b40432caa6ec53d97bc329ffa69eaed9c9a05..7f6e718d158c46a82fa9ed9408577051232897dd 100755
--- a/dist/tools/testsuite/run_tests.sh
+++ b/dist/tools/testsuite/run_tests.sh
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 
 TOOLROOT=${TOOLROOT:-.}
 
diff --git a/dist/tools/toolchains/build_gnuarm.sh b/dist/tools/toolchains/build_gnuarm.sh
index c19e657f86b2294f03f19a4e3fafa4c996fe9fbe..2ce56e44465bd5e16e6f514a3049fee4d6d2ff6b 100755
--- a/dist/tools/toolchains/build_gnuarm.sh
+++ b/dist/tools/toolchains/build_gnuarm.sh
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 
 # directory to install compiled binaries into
 PREFIX=${HOME}/gnuarm
diff --git a/dist/tools/toolchains/build_gnuarm_naked.sh b/dist/tools/toolchains/build_gnuarm_naked.sh
index 3eb58364111412e6e5dbfc43ad71cb7eab37edb7..8309f2a0e37b6f09253d375c2275d7d85a4b636f 100755
--- a/dist/tools/toolchains/build_gnuarm_naked.sh
+++ b/dist/tools/toolchains/build_gnuarm_naked.sh
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 
 # directory to install compiled binaries into
 PREFIX=${HOME}/gnuarm-naked
diff --git a/dist/tools/toolchains/build_x86.sh b/dist/tools/toolchains/build_x86.sh
index e55b374f27b4994c1cca46f821cbe8a5465bca98..3e417b38b4d3b4cf3c2c92be0ad07ab5781aa028 100755
--- a/dist/tools/toolchains/build_x86.sh
+++ b/dist/tools/toolchains/build_x86.sh
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 
 # directory to download source files and store intermediates
 [[ -z $TARGET ]] && TARGET=i586-none-elf
diff --git a/dist/tools/travis-scripts/build_and_test.sh b/dist/tools/travis-scripts/build_and_test.sh
index 7ead89458fcfdb431193a3ec92a1979a63ad2e23..840cb929d3f04f5fa98d08a56081e32a57812a5d 100755
--- a/dist/tools/travis-scripts/build_and_test.sh
+++ b/dist/tools/travis-scripts/build_and_test.sh
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 #
 # Copyright (C) 2015 Philipp Rosenkranz <philipp.rosenkranz@fu-berlin.de>
 #
diff --git a/dist/tools/usb-serial/find-tty.sh b/dist/tools/usb-serial/find-tty.sh
index aec2b1d7f2cadc881cf3aef4b10b7b4b73745253..ee02c22b5f562a9cdba80ecad1ed07cc10fd48f5 100755
--- a/dist/tools/usb-serial/find-tty.sh
+++ b/dist/tools/usb-serial/find-tty.sh
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 
 #
 # Copyright (C) 2015 Eistec AB
diff --git a/pkg/libfixmath/checkout.sh b/pkg/libfixmath/checkout.sh
index 68a6483fe8a3625cf4de6d2c0dd2ec9ca77f1a9a..4578af79a4ded5976d71a49fefde1af774e3b5cf 100755
--- a/pkg/libfixmath/checkout.sh
+++ b/pkg/libfixmath/checkout.sh
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 
 if [ -z "${CHECKOUT_FOLDER}" ]; then
     echo 'export CHECKOUT_FOLDER before running this script' >&2
diff --git a/pkg/libfixmath/perform-svn-checkout.sh b/pkg/libfixmath/perform-svn-checkout.sh
index dff3c2b906fbbac30b2b44ef731b806c939a0259..426a42733ab589d9e3730a43e324eaa73fac31fc 100755
--- a/pkg/libfixmath/perform-svn-checkout.sh
+++ b/pkg/libfixmath/perform-svn-checkout.sh
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 if [ -z "${PKG_URL}" ]; then
     echo 'export PKG_URL before running this script' >&2
     exit 2