diff --git a/scripts/asciidoc2html.py b/scripts/asciidoc2html.py
index 5343141c4..b031b06b0 100644
--- a/scripts/asciidoc2html.py
+++ b/scripts/asciidoc2html.py
@@ -21,11 +21,12 @@
"""Generate the html documentation based on the asciidoc files."""
import os
+import os.path
import sys
import subprocess
import glob
-sys.path.insert(0, os.getcwd())
+sys.path.insert(0, os.path.join(os.path.dirname(__file__), os.pardir))
from scripts import utils
diff --git a/scripts/freeze.py b/scripts/freeze.py
index 3e42b139e..577d44c98 100755
--- a/scripts/freeze.py
+++ b/scripts/freeze.py
@@ -31,7 +31,7 @@ import distutils
import cx_Freeze as cx
-sys.path.insert(0, os.getcwd())
+sys.path.insert(0, os.path.join(os.path.dirname(__file__), os.pardir))
from scripts import setupcommon
diff --git a/scripts/run_checks.py b/scripts/run_checks.py
index 4bde6541c..ce65c87b2 100755
--- a/scripts/run_checks.py
+++ b/scripts/run_checks.py
@@ -47,7 +47,7 @@ import pep257
import pkg_resources as pkg
-sys.path.insert(0, os.getcwd())
+sys.path.insert(0, os.path.join(os.path.dirname(__file__), os.pardir))
from scripts import utils
diff --git a/scripts/run_profile.py b/scripts/run_profile.py
index 6ab23b08c..8851a423d 100755
--- a/scripts/run_profile.py
+++ b/scripts/run_profile.py
@@ -28,7 +28,7 @@ import tempfile
import subprocess
import shutil
-sys.path.insert(0, os.getcwd())
+sys.path.insert(0, os.path.join(os.path.dirname(__file__), os.pardir))
import qutebrowser.qutebrowser # pylint: disable=unused-import
diff --git a/scripts/segfault_test.py b/scripts/segfault_test.py
index 6b771535c..99da378ea 100755
--- a/scripts/segfault_test.py
+++ b/scripts/segfault_test.py
@@ -24,8 +24,9 @@ import os
import signal
import sys
import subprocess
+import os.path
-sys.path.insert(0, os.getcwd())
+sys.path.insert(0, os.path.join(os.path.dirname(__file__), os.pardir))
from scripts import utils
diff --git a/scripts/setupcommon.py b/scripts/setupcommon.py
index 204437a99..a640f6f5a 100644
--- a/scripts/setupcommon.py
+++ b/scripts/setupcommon.py
@@ -26,7 +26,7 @@ import ast
import os
import os.path
import subprocess
-sys.path.insert(0, os.getcwd())
+sys.path.insert(0, os.path.join(os.path.dirname(__file__), os.pardir))
BASEDIR = os.path.join(os.path.dirname(os.path.realpath(__file__)),
diff --git a/scripts/src2asciidoc.py b/scripts/src2asciidoc.py
index 366ffe028..8e6638b42 100755
--- a/scripts/src2asciidoc.py
+++ b/scripts/src2asciidoc.py
@@ -31,7 +31,7 @@ import collections
import tempfile
import argparse
-sys.path.insert(0, os.getcwd())
+sys.path.insert(0, os.path.join(os.path.dirname(__file__), os.pardir))
# We import qutebrowser.app so all @cmdutils-register decorators are run.
import qutebrowser.app