# Winapps discussion

**URL:** <https://universal-blue.discourse.group/t/winapps-discussion/8161>\
**Category:** General\
**Created:** [April 29, 2025, 2:31pm UTC](https://universal-blue.discourse.group/t/winapps-discussion/8161 "2025-04-29T14:31:53Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![Anonymo](https://avatars.discourse-cdn.com/v4/letter/a/258eb7/32.png) [@Anonymo](https://universal-blue.discourse.group/u/Anonymo)\
**Post date:** [April 29, 2025, 2:31pm UTC](https://universal-blue.discourse.group/t/winapps-discussion/8161/1 "2025-04-29T14:31:53Z")

</div>

[GitHub - winapps-org/winapps: Run Windows apps such as Microsoft Office/Adobe in Linux (Ubuntu/Fedora) and GNOME/KDE as if they were a part of the native OS, including Nautilus integration. Hard fork of https://github.com/Fmstrat/winapps/](https://github.com/winapps-org/winapps) why not just run it in a VM?

---

<div class="post-metadata">

**Author:** ![salim](https://yyz2.discourse-cdn.com/free1/user_avatar/universal-blue.discourse.group/salim/32/3536_2.png) [@salim](https://universal-blue.discourse.group/u/salim)\
**Post date:** [April 29, 2025, 3:46pm UTC](https://universal-blue.discourse.group/t/winapps-discussion/8161/2 "2025-04-29T15:46:14Z")

</div>

There’s also [Bottles](https://usebottles.com/), a user-friendly [Wine](https://en.wikipedia.org/wiki/Wine_(software)) prefix manager. It’s available as a [Flatpak](https://flathub.org/apps/com.usebottles.bottles).

Regarding the [WinApps](https://github.com/winapps-org/winapps) VM approach: I guess this is way more robust than any Wine-based solution, so looks very interesting!

Personally, I don’t need any Windows apps. But having a `ujust` helper in the uBlue images to install WinApps (the [`com.freerdp.FreeRDP`](https://github.com/winapps-org/winapps?tab=readme-ov-file#step-2-install-dependencies) Flatpak + [Windows in a Podman container](https://github.com/winapps-org/winapps/blob/a4d30724b588cea9c3c60279d8773d320f621594/docs/docker.md)) could be a _massive_ selling point for Bluefin & Co… 😏

---

<div class="post-metadata">

**Author:** ![JohnAtl](https://yyz2.discourse-cdn.com/free1/user_avatar/universal-blue.discourse.group/johnatl/32/3485_2.png) [@JohnAtl](https://universal-blue.discourse.group/u/JohnAtl)\
**Post date:** [April 29, 2025, 6:22pm UTC](https://universal-blue.discourse.group/t/winapps-discussion/8161/3 "2025-04-29T18:22:04Z")

</div>

[dockur](https://github.com/dockur/windows) works well for me for the occasional time I need to run something under Windows for work.

---

<div class="post-metadata">

**Author:** ![Anonymo](https://avatars.discourse-cdn.com/v4/letter/a/258eb7/32.png) [@Anonymo](https://universal-blue.discourse.group/u/Anonymo)\
**Post date:** [April 29, 2025, 6:42pm UTC](https://universal-blue.discourse.group/t/winapps-discussion/8161/4 "2025-04-29T18:42:46Z")

</div>

That’s really cool, had not see this.

---

<div class="post-metadata">

**Author:** ![JohnAtl](https://yyz2.discourse-cdn.com/free1/user_avatar/universal-blue.discourse.group/johnatl/32/3485_2.png) [@JohnAtl](https://universal-blue.discourse.group/u/JohnAtl)\
**Post date:** [April 29, 2025, 6:44pm UTC](https://universal-blue.discourse.group/t/winapps-discussion/8161/5 "2025-04-29T18:44:13Z")

</div>

Yeah, it’s kind of magical.

---

<div class="post-metadata">

**Author:** ![m2Giles](https://yyz2.discourse-cdn.com/free1/user_avatar/universal-blue.discourse.group/m2giles/32/471_2.png) [@m2Giles](https://universal-blue.discourse.group/u/m2Giles)\
**Post date:** [April 29, 2025, 11:39pm UTC](https://universal-blue.discourse.group/t/winapps-discussion/8161/6 "2025-04-29T23:39:10Z")

</div>

We use their qemu image for testing. Pretty nice solution for VMs

---

<div class="post-metadata">

**Author:** ![fenglengshun](https://yyz2.discourse-cdn.com/free1/user_avatar/universal-blue.discourse.group/fenglengshun/32/367_2.png) [@fenglengshun](https://universal-blue.discourse.group/u/fenglengshun)\
**Post date:** [April 30, 2025, 2:34am UTC](https://universal-blue.discourse.group/t/winapps-discussion/8161/7 "2025-04-30T02:34:31Z")

</div>

Does it work with Podman?

---

<div class="post-metadata">

**Author:** ![JohnAtl](https://yyz2.discourse-cdn.com/free1/user_avatar/universal-blue.discourse.group/johnatl/32/3485_2.png) [@JohnAtl](https://universal-blue.discourse.group/u/JohnAtl)\
**Post date:** [April 30, 2025, 5:06am UTC](https://universal-blue.discourse.group/t/winapps-discussion/8161/8 "2025-04-30T05:06:04Z")

</div>

I’m not sure. I didn’t go in depth with it.

---

<div class="post-metadata">

**Author:** ![fenglengshun](https://yyz2.discourse-cdn.com/free1/user_avatar/universal-blue.discourse.group/fenglengshun/32/367_2.png) [@fenglengshun](https://universal-blue.discourse.group/u/fenglengshun)\
**Post date:** [April 30, 2025, 6:14am UTC](https://universal-blue.discourse.group/t/winapps-discussion/8161/9 "2025-04-30T06:14:42Z")

</div>

Based on [this part](https://github.com/dockur/windows?tab=readme-ov-file#how-do-i-verify-if-my-system-supports-kvm), it seems like it should be supported. I’ll try just replacing `docker` with `podman` in the commands, should have some time tomorrow since it’s Worker’s Day (national holiday).

---

<div class="post-metadata">

**Author:** ![pg-tips](https://avatars.discourse-cdn.com/v4/letter/p/9d8465/32.png) [@pg-tips](https://universal-blue.discourse.group/u/pg-tips)\
**Post date:** [April 30, 2025, 9:53am UTC](https://universal-blue.discourse.group/t/winapps-discussion/8161/10 "2025-04-30T09:53:06Z")

</div>

> [@JohnAtl](#):
>
> [dockur](https://github.com/dockur/windows) works well for me for the occasional time I need to run something under Windows for work.

Looks like that’s how Winapps works when you use it with a docker or podman backend - [winapps/compose.yaml at a4d30724b588cea9c3c60279d8773d320f621594 · winapps-org/winapps · GitHub](https://github.com/winapps-org/winapps/blob/a4d30724b588cea9c3c60279d8773d320f621594/compose.yaml#L11)

(There is also an alternative setup where you create a more conventional Windows VM in libvirt.)

---

<div class="post-metadata">

**Author:** ![fenglengshun](https://yyz2.discourse-cdn.com/free1/user_avatar/universal-blue.discourse.group/fenglengshun/32/367_2.png) [@fenglengshun](https://universal-blue.discourse.group/u/fenglengshun)\
**Post date:** [May 2, 2025, 9:56am UTC](https://universal-blue.discourse.group/t/winapps-discussion/8161/11 "2025-05-02T09:56:49Z")

</div>

Theoretically, which one should have more footprint and performance? libvirt?

---

<div class="post-metadata">

**Author:** ![Anonymo](https://avatars.discourse-cdn.com/v4/letter/a/258eb7/32.png) [@Anonymo](https://universal-blue.discourse.group/u/Anonymo)\
**Post date:** [May 2, 2025, 1:42pm UTC](https://universal-blue.discourse.group/t/winapps-discussion/8161/12 "2025-05-02T13:42:46Z")

</div>

Not sure if dockur does the same thing, but Winapps integrate with Nautilus and the apps show up like Native apps.

---

<div class="post-metadata">

**Author:** ![JohnAtl](https://yyz2.discourse-cdn.com/free1/user_avatar/universal-blue.discourse.group/johnatl/32/3485_2.png) [@JohnAtl](https://universal-blue.discourse.group/u/JohnAtl)\
**Post date:** [May 2, 2025, 2:20pm UTC](https://universal-blue.discourse.group/t/winapps-discussion/8161/13 "2025-05-02T14:20:44Z")

</div>

When you use dockur, you get the Windows UI in ~~a browser window.~~ QEMU.

---

<div class="post-metadata">

**Author:** ![salim](https://yyz2.discourse-cdn.com/free1/user_avatar/universal-blue.discourse.group/salim/32/3536_2.png) [@salim](https://universal-blue.discourse.group/u/salim)\
**Post date:** [May 2, 2025, 3:15pm UTC](https://universal-blue.discourse.group/t/winapps-discussion/8161/14 "2025-05-02T15:15:29Z")

</div>

From dockur’s [README](https://github.com/dockur/windows?tab=readme-ov-file#how-do-i-connect-using-rdp) (haven’t used it myself yet):

> The web-viewer is mainly meant to be used during installation, as its picture quality is low, and it has no audio or clipboard for example.
> 
> So for a better experience you can connect using any Microsoft Remote Desktop client to the IP of the container, using the username `Docker` and password `admin`.
> 
> There is a RDP client for [Android](https://play.google.com/store/apps/details?id=com.microsoft.rdc.androidx) available from the Play Store and one for [iOS](https://apps.apple.com/nl/app/microsoft-remote-desktop/id714464092?l=en-GB) in the Apple Store. For Linux you can use [FreeRDP](https://www.freerdp.com/) and on Windows just type `mstsc` in the search box.

So in the end, it seems to me that the WinApps project is mostly UX sugar around underlying tech incl. dockur and FreeRDP. Exemplary separation of concerns – as careful OSS projects often do (looking especially at you, Universal Blue and friends!).

---

<div class="post-metadata">

**Author:** ![JohnAtl](https://yyz2.discourse-cdn.com/free1/user_avatar/universal-blue.discourse.group/johnatl/32/3485_2.png) [@JohnAtl](https://universal-blue.discourse.group/u/JohnAtl)\
**Post date:** [May 2, 2025, 4:57pm UTC](https://universal-blue.discourse.group/t/winapps-discussion/8161/15 "2025-05-02T16:57:08Z")

</div>

Good to know, thanks!

---

<div class="post-metadata">

**Author:** ![Matt\_Wilkie](https://yyz2.discourse-cdn.com/free1/user_avatar/universal-blue.discourse.group/matt_wilkie/32/4190_2.png) [@Matt\_Wilkie](https://universal-blue.discourse.group/u/Matt_Wilkie)\
**Post date:** [May 5, 2025, 7:46pm UTC](https://universal-blue.discourse.group/t/winapps-discussion/8161/16 "2025-05-05T19:46:57Z")

</div>

I tried WinApps yesterday but got blocked on sharing files with host, which was my main point for trying; something about iptables needing priviliged access ([ref](https://github.com/winapps-org/winapps/issues/394)). Dockur worked out of the box though, using podman. Their documentation seems to be more polished also.

Related: My laptop is dual boot Win11 and Bluefin. I haven’t used windows since January. Discounting research and finding my bitlocker key, it only took 10 minutes to turn in the windows volume into a VM using `virt-manager`! (1. use `lsblk` to get disk name, 2. Instruct `virt-manager` to use this device as storage. It creates a link file that points the device.)

> **[Create Win11 VM from physical disk - maphew](https://www.maphew.com/share/create-win11-vm-from-physical-disk)**

---

<div class="post-metadata">

**Author:** ![zilexa](https://yyz2.discourse-cdn.com/free1/user_avatar/universal-blue.discourse.group/zilexa/32/2221_2.png) [@zilexa](https://universal-blue.discourse.group/u/zilexa)\
**Post date:** [May 6, 2025, 1:15pm UTC](https://universal-blue.discourse.group/t/winapps-discussion/8161/17 "2025-05-06T13:15:23Z")

</div>

Oh wow this is an interesting topic.  
A ujust script for either WinApps or Dockur would be nice. Especially if it adds a shortcut (.desktop) for users to open Windows in a Gnome Connections RDP session, and with the Nautilus integration.

Hope this will become reality soon. Not that I rely on Windows for vital tasks but it’s really a nice to have for those situations where you can’t get around it. Like upgrading a firmware of some device where the manufacturer only makes a tool available for Windows or whatever.

---

<div class="post-metadata">

**Author:** ![m2Giles](https://yyz2.discourse-cdn.com/free1/user_avatar/universal-blue.discourse.group/m2giles/32/471_2.png) [@m2Giles](https://universal-blue.discourse.group/u/m2Giles)\
**Post date:** [May 11, 2025, 2:00pm UTC](https://universal-blue.discourse.group/t/winapps-discussion/8161/18 "2025-05-11T14:00:15Z")

</div>

The starting point for something like dockur exists.

We use the plain qemu version for iso-testing.

---

<div class="post-metadata">

**Author:** ![phreed](https://yyz2.discourse-cdn.com/free1/user_avatar/universal-blue.discourse.group/phreed/32/2417_2.png) [@phreed](https://universal-blue.discourse.group/u/phreed)\
**Post date:** [May 12, 2025, 10:22pm UTC](https://universal-blue.discourse.group/t/winapps-discussion/8161/19 "2025-05-12T22:22:17Z")

</div>

Here are my notes to get `dockurr/windows` running on the latest `bluefin`.  
I had issues with `btrfs` so I made a new ext4 partition and mounted it as `/run/media/my_user/windows`. I am open to recommendations about a more appropriate mount point.

I had some issues with selinux. Here is the module type-enforcement file `podman-windows.te`:

```plaintext
module podman-windows 1.0;

require {
    type container_t;
    type tun_tap_device_t;
    type unlabeled_t;
    class dir { read write add_name remove_name create rmdir };
    class file { ioctl lock open read write unlink create setattr append };
    class chr_file { getattr ioctl open read write };
}

#============= container_t ==============
allow container_t tun_tap_device_t:chr_file { getattr ioctl open read write };
allow container_t unlabeled_t:dir { read write add_name remove_name create rmdir };
allow container_t unlabeled_t:file { ioctl lock open read write unlink create setattr append };

```

Which is installed via:

```bash
sudo checkmodule -M -m -o podman-windows.mod podman-windows.te
sudo semodule_package -o podman-windows.pp -m podman-windows.mod
sudo semodule -i podman-windows.pp

```

Then the following command seems to work:

```bash
podman run -it --rm --name windows -p 8006:8006 --device=/dev/kvm --device=/dev/net/tun --cap-add NET_ADMIN -v "/run/media/my_user/windows:/storage" --stop-timeout 120 dockurr/windows

```

I am working on a podman quadlet for this, I will post it when (if) I get it working.

I have not exercised the resulting Windows VM much yet.

---

<div class="post-metadata">

**Author:** ![GitHub-source-42](https://yyz2.discourse-cdn.com/free1/user_avatar/universal-blue.discourse.group/github-source-42/32/6465_2.png) [@GitHub-source-42](https://universal-blue.discourse.group/u/GitHub-source-42)\
**Post date:** [May 14, 2025, 11:52am UTC](https://universal-blue.discourse.group/t/winapps-discussion/8161/20 "2025-05-14T11:52:14Z")

</div>

Hi all trying to follow the [Winapps Install guide](https://universal-blue.discourse.group/t/winapps-in-bazzite-portal/2199) but testing the RDP connection I get the following error:

```auto
[12:35:04:470] [71090:000115b4] [WARN][com.freerdp.client.xfreerdp.utils] - [run_action_script]: [ActionScript] no such script '/var/home/alice/.config/freerdp/action.sh'
[12:35:04:471] [71090:000115b4] [WARN][com.freerdp.client.xfreerdp.utils] - [run_action_script]: [ActionScript] no such script '/var/home/alice/.config/freerdp/action.sh'
[12:35:04:504] [71090:000115b4] [ERROR][com.freerdp.codec] - [openh264_init]: Failed to create OpenH264 decoder
[12:35:04:504] [71090:000115b4] [WARN][com.freerdp.core.codecs] - [freerdp_client_codecs_prepare]: Failed to create h264 codec context
[12:35:04:522] [71090:000115b4] [ERROR][com.freerdp.core.transport] - [transport_default_write]: BIO_should_retry returned a system error 32: Broken pipe
[12:35:04:522] [71090:000115b4] [ERROR][com.freerdp.core] - [transport_default_write]: ERRCONNECT_CONNECT_TRANSPORT_FAILED [0x0002000D]
[12:35:04:533] [71090:000115b4] [ERROR][com.freerdp.codec] - [openh264_init]: Failed to create OpenH264 decoder
[12:35:04:533] [71090:000115b4] [WARN][com.freerdp.core.codecs] - [freerdp_client_codecs_prepare]: Failed to create h264 codec context
[12:35:04:550] [71090:000115b4] [ERROR][com.freerdp.core.transport] - [transport_default_write]: BIO_should_retry returned a system error 32: Broken pipe
[12:35:04:550] [71090:000115b4] [ERROR][com.freerdp.core] - [transport_default_write]: ERRCONNECT_CONNECT_TRANSPORT_FAILED [0x0002000D]
[12:35:04:550] [71090:000115b4] [ERROR][com.freerdp.core] - [freerdp_connect]: freerdp_post_connect failed

```

I have tried removing security (tofu) from the config file but there has been no success. Any help or if I need to make a new thread please LMK
