# @static in Project.toml

**URL:** https://discourse.julialang.org/t/static-in-project-toml/138474
**Category:** General Usage
**Created:** [July 25, 2026, 9:55pm UTC](https://discourse.julialang.org/t/static-in-project-toml/138474 "2026-07-25T21:55:54Z")
**Posts on this page:** 2
**Page:** 1

<div class="post-metadata">

### Author: ![Jake](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/jake/32/46007_2.png) [@Jake](https://discourse.julialang.org/u/Jake)
#### Post date: [July 25, 2026, 9:55pm UTC](https://discourse.julialang.org/t/static-in-project-toml/138474/1 "2026-07-25T21:55:54Z")

</div>

I am using the command `@static Sys.ARCH == :aarch64 ? using WGLMakie : using GLMakie` in my program to use WGLMakie on the Raspberry PI and GLMakie on other machines.

This is due to OpenGL not being available on the RPI.

Can I also use this command in the `Project.toml` so that the program does not have both `WGLMakie` and `GLMakie` in the Project.toml? If not, is there another way to do this?

---

<div class="post-metadata">

### Author: ![Benny](https://avatars.discourse-cdn.com/v4/letter/b/49beb7/32.png) [@Benny](https://discourse.julialang.org/u/Benny)
#### Post date: [July 25, 2026, 11:09pm UTC](https://discourse.julialang.org/t/static-in-project-toml/138474/2 "2026-07-25T23:09:38Z")

</div>

At the moment, Project.toml and `Pkg`’s resolver are platform independent. This isn’t a big deal for JLLs wrapping available artifacts, but installing both `WGLMakie` and `GLMakie` only spares the precompilation. If you really don’t want the extra baggage of an unused dependency, you need a separate version or package (preferably in the same monorepo, `include`-ing the same files). It’s obviously weird for 2 packages to have the same code except for one import expression, but it was already weird for 2 dependencies to have the same `Makie` API to allow that in the first place. If you’re not making a package, then it’s just sending a different environment and script to the Pi.
