---
<!-- Copyright © SixtyFPS GmbH <info@slint.dev> ; SPDX-License-Identifier: MIT -->
title: Desktop
description: Desktop platforms on which Slint has been tested
---

import { Tabs, TabItem } from '@astrojs/starlight/components';

Generally, Slint runs on Windows, macOS, and popular Linux distributions. The following tables
cover versions that we specifically test. The general objective is to support the operating systems that
are supported by their vendors at the time of a Slint version release.


<Tabs syncKey="dev-platform">
<TabItem label="Windows" icon="seti:windows">

| Operating System | Architecture |
| ---------------- | ------------ |
| Windows 10       | x86-64       |
| Windows 11       | x86-64       |

### Handle the console window

When you running an application a console window will show by [default](https://learn.microsoft.com/en-us/cpp/build/reference/subsystem-specify-subsystem?view=msvc-170).

Disable the console by specifying a `WINDOWS` subsystem.

When running the application from the command line, if the subsystem is set to windows it will no longer output stdout. To get it back consider using `FreeConsole()`.

See more details at [#3235](https://github.com/slint-ui/slint/issues/3235)

<Tabs syncKey="dev-language">
<TabItem label="Rust">

Add the code to the top of .rs file which contains `fn main()`:

```rust
#![windows_subsystem = "windows"]
```

Or if you want to keep console output in debug mode:

```rust
#![cfg_attr(not(debug_assertions), windows_subsystem = "windows")]
```
</TabItem>
<TabItem label="C++">


Select the `WINDOWS` subsystem by setting the [`WIN32_EXECUTABLE`](https://cmake.org/cmake/help/latest/prop_tgt/WIN32_EXECUTABLE.html#prop_tgt:WIN32_EXECUTABLE) target property on your executable target:

```cmake
add_executable(my_program ...)
set_property(TARGET my_program APPEND PROPERTY WIN32_EXECUTABLE TRUE)
```

</TabItem>
<TabItem label="Node.js">

TODO: Add node.js
</TabItem>
</Tabs>
</TabItem>
<TabItem label="macOS" icon="apple">

| Operating System  | Architecture    |
| ----------------- | --------------- |
| macOS 12 Monterey | x86-64, aarch64 |
| macOS 13 Ventura  | x86-64, aarch64 |
| macOS 14 Sonoma   | x86-64, aarch64 |
| macOS 15 Sequoia  | x86-64, aarch64 |

</TabItem>
<TabItem label="Linux" icon="linux">


Linux desktop distribution present a diverse landscape, and Slint should run on any of them, provided that they
are using Wayland or X-Windows, glibc, and d-bus. If a Linux distribution provides Long Term Support (LTS),
Slint should run on the most recent LTS or newer, at the time of a Slint version release.
</TabItem>
</Tabs>

## What about other platforms?
[Contact us](https://slint.dev/contact) if you need to support specific or older versions.
