1diff --git a/windmill-worker/src/python_versions.rs b/windmill-worker/src/python_versions.rs
2index 3d71e9f9ec..c9166b52c6 100644
3--- a/windmill-worker/src/python_versions.rs
4+++ b/windmill-worker/src/python_versions.rs
5@@ -326,6 +326,7 @@ impl PyV {
6 }
7
8 pub async fn list_available_python_versions() -> Vec<Self> {
9+ return vec![PyVAlias::Py312.into()];
10 match Self::list_available_python_versions_inner().await {
11 Ok(pyvs) => pyvs,
12 Err(e) => {
13@@ -591,6 +592,10 @@ impl PyV {
14 w_id: &str,
15 occupancy_metrics: &mut Option<&mut OccupancyMetrics>,
16 ) -> error::Result<()> {
17+ let v = self.to_string();
18+ append_logs(job_id, w_id, format!("\nREQUESTED PYTHON INSTALL IGNORED ({})", v), conn).await;
19+ return Err(error::Error::BadConfig(format!("Python is managed through the NixOS system configuration. Change the Windmill instance setting to version '3.12'")));
20+
21 let v = self.to_string();
22 append_logs(job_id, w_id, format!("\nINSTALLING PYTHON ({})", v), conn).await;
23 // Create dirs for newly installed python
24@@ -695,11 +700,11 @@ impl PyV {
25 "find",
26 &self.to_string(),
27 "--system",
28- "--python-preference=only-managed",
29+ "--python-preference=only-system",
30 ])
31 .envs([
32 ("UV_PYTHON_INSTALL_DIR", PY_INSTALL_DIR),
33- ("UV_PYTHON_PREFERENCE", "only-managed"),
34+ ("UV_PYTHON_PREFERENCE", "only-system"),
35 ])
36 // .stdout(Stdio::piped())
37 .stderr(Stdio::piped())