# Feature request: default values for environment variables in presets

**URL:** https://discourse.cmake.org/t/feature-request-default-values-for-environment-variables-in-presets/12933
**Category:** Development
**Created:** [November 10, 2024, 8:56pm UTC](https://discourse.cmake.org/t/feature-request-default-values-for-environment-variables-in-presets/12933 "2024-11-10T20:56:37Z")
**Posts on this page:** 3
**Page:** 1

<div class="post-metadata">

### Author: ![Braden](https://discourse.cmake.org/user_avatar/discourse.cmake.org/braden/32/358_2.png) [@Braden](https://discourse.cmake.org/u/Braden)
#### Post date: [November 10, 2024, 8:56pm UTC](https://discourse.cmake.org/t/feature-request-default-values-for-environment-variables-in-presets/12933/1 "2024-11-10T20:56:37Z")

</div>

It would be helpful to have the ability to supply a default value for environment variables in presets (when the environment variable is not defined).

My use case is this… I’d like to make the build directory a subdirectory of `XDG_CACHE_HOME`. The semantics of this variable are such that applications should use `~/.cache` if the variable is not defined. It would be nice if it were possible to express this in `CMakePresets.json`.

---

<div class="post-metadata">

### Author: ![leha-bot](https://discourse.cmake.org/user_avatar/discourse.cmake.org/leha-bot/32/921_2.png) [@leha-bot](https://discourse.cmake.org/u/leha-bot)
#### Post date: [November 12, 2024, 9:03am UTC](https://discourse.cmake.org/t/feature-request-default-values-for-environment-variables-in-presets/12933/2 "2024-11-12T09:03:02Z")

</div>

+1 for feature, it also would compose great with new default CMake config dir (see [https://gitlab.kitware.com/cmake/cmake/-/merge\_requests/9615](https://gitlab.kitware.com/cmake/cmake/-/merge_requests/9615) for details)

---

<div class="post-metadata">

### Author: ![ben.boeckel](https://discourse.cmake.org/letter_avatar_proxy/v4/letter/b/ea5d25/32.png) [@ben.boeckel](https://discourse.cmake.org/u/ben.boeckel)
#### Post date: [July 20, 2025, 1:43am UTC](https://discourse.cmake.org/t/feature-request-default-values-for-environment-variables-in-presets/12933/3 "2025-07-20T01:43:52Z")

</div>

Do you have a proposed syntax/spelling for it? A [new feature request](https://gitlab.kitware.com/cmake/cmake/-/issues) would make sense (bikeshedding can happen there).
