diff --git a/ci/Jenkinsfile b/ci/Jenkinsfile
index 2d97a06b3d0e621e75af32849019a1f78310b776..a4e13aedf32169c47f1f441708798be5b0c6b14a 100644
--- a/ci/Jenkinsfile
+++ b/ci/Jenkinsfile
@@ -131,7 +131,6 @@ pipeline {
               cd src
               meson \
                 --prefix="$(pwd)/_build/prefix" \
-                -Dpython=python3.5 \
                 -Dsrcdir=src \
                 _build
               ninja -C _build
diff --git a/debian/gitlab-ci.yml b/debian/gitlab-ci.yml
index b32c8e80fab2cd5d1eb4e398eb1ff81e2850d47f..4b44aa5c39c042d8732a95a20b1e8b9d2892b6ff 100644
--- a/debian/gitlab-ci.yml
+++ b/debian/gitlab-ci.yml
@@ -120,7 +120,6 @@ build:scout:
 
             meson \
               --prefix="$(pwd)/_build/prefix" \
-              -Dpython=python3.5 \
               -Dsrcdir=src \
               --werror \
               _build
diff --git a/debian/rules b/debian/rules
index 165fe78a924f2bb5d7e66de589150bf8c19375dc..e5c89d9ff9ff4a524f0991354415edd9363435b4 100755
--- a/debian/rules
+++ b/debian/rules
@@ -25,15 +25,9 @@ override_dh_auto_clean:
 	rm -fr debian/locales
 
 override_dh_auto_configure:
-	if python3 -c 'if __import__("sys").version_info < (3, 5): raise SystemExit(1)'; then \
-		python=python3; \
-	else \
-		python=python3.5; \
-	fi; \
 	if ! meson _build \
 		--prefix=/usr/lib/pressure-vessel/relocatable \
 		-Dman=true \
-		-Dpython=/usr/bin/$$python \
 		-Dsrcdir=src \
 		-Dversion=$(DEB_VERSION) \
 		$(meson_options) \
diff --git a/meson.build b/meson.build
index 4e652b1a442de3983d1f3f2eca878c5524ab5910..c01943700924a4e0633e58a6dbde38500df81654 100644
--- a/meson.build
+++ b/meson.build
@@ -29,9 +29,17 @@ project(
 )
 
 prove = find_program('prove', required : false)
-python = find_program(get_option('python'), required : true)
 sh = find_program('sh', required : true)
 
+# We'd like to use import('python').find_installation(), but before
+# Meson 0.50 there was a bug where it didn't have a path() method,
+# making it useless to us here.
+if get_option('python') == ''
+  python = find_program('python3.5', 'python3', required : true)
+else
+  python = find_program(get_option('python'), required : true)
+endif
+
 version = get_option('version')
 if version == 'auto'
   git_version_gen = run_command(
diff --git a/meson_options.txt b/meson_options.txt
index 0931f78eb32d21a96321bfc85928556d95d41117..8004724c56d86ec8a5e08eff4d6d72adc2b9d09c 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -1,4 +1,4 @@
 option('man', type : 'boolean', value : false, description : 'enable man pages')
-option('python', type : 'string', value : 'python3')
+option('python', type : 'string', value : '')
 option('srcdir', type : 'string', value : '')
 option('version', type : 'string', value : 'auto')