Pengwin Enterprise 8.8 and 9.2 released with OpenGL 4 & GPU video acceleration

Pengwin Enterprise has been upgraded to Enterprise Linux 8.8 and Enterprise Linux 9.2, respectively, with an important addition, support for OpenGL 4 and GPU Video Acceleration in WSL2. Pengwin Enterprise comes with Mesa 22.3.0 preinstalled Direct3D 12 and video codec support.

Pengwin Enterprise 9.2.0

  • Upgraded the Windows Subsystem for Linux (WSL) distro to Enterprise Linux 9.2; the personal version was upgraded to Rocky Linux 9.2 and the corporate version to RHEL 9.2.

  • Recompiled the provided Mesa 22.3.0 to include the Microsoft Direct 3D driver and video codecs with OpenGL 4 support and video acceleration.

  • Added experimental prompt escape sequences for Windows Terminal 1.18 Shell Integration. Now you’ll see dots over the scrollbar, indicating the commands executed and whether they were successful. It only works in bash with the default prompt.

  • If you enable the right-click menu as described here: How to enable shell integration marks adding the "experimental.rightClickContextMenu": true element to your Windows Terminal settings.json you’ll have very useful commands

  • When the distro is being installed, a progress icon will appear on the Windows Terminal tab.

Fixed

  • After performing a Reset in App Settings, the distro can be installed again without reinstalling the app.

  • Now, if you configure Pengwin Enterprise as your Default Profile in Windows Terminal, right-click a folder in File Explorer and select Open in Terminal, it will correctly open in the desired directory.

  • The icon is now correctly displayed in the Windows Terminal tab with the default dark theme.

Pengwin Enterprise 8.8.0

  • Upgraded the Windows Subsystem for Linux (WSL) distro to Enterprise Linux 8.8; the personal version was upgraded to Rocky Linux 8.8, and the corporate version to RHEL 8.8.

  • Recompiled the provided Mesa 22.3.0 to include the Microsoft Direct 3D driver and video codecs with OpenGL 4 support and video acceleration.

  • Added experimental prompt escape sequences for Windows Terminal 1.18 Shell Integration. Now you’ll see dots over the scrollbar, indicating the commands executed and whether they were successful. It only works in bash with the default prompt.

  • If you enable the right-click menu as described here: How to enable shell integration marks adding the "experimental.rightClickContextMenu": true element to your Windows Terminal settings.json, you’ll have handy commands.

  • When the distro is being installed, a progress icon will appear on the Windows Terminal tab.

Fixed

  • After performing a Reset in App Settings, the distro can be installed again without reinstalling the app.

  • Now, if you configure Pengwin Enterprise as your Default Profile in Windows Terminal, right-click a folder in File Explorer and select Open in Terminal, it will correctly open in the desired directory.

  • The icon is now correctly displayed in the Windows Terminal tab with the default dark theme.

Pengwin Enterprise 7.9.15

Although there is no update at distribution level, we backported the improvements from the launcher to Pengwin Enterprise 7

  • Added experimental prompt escape sequences for Windows Terminal 1.18 Shell Integration. Now you’ll see dots over the scrollbar, indicating the commands executed and whether they were successful. It only works in bash with the default prompt.

  • If you enable the right-click menu as described here: How to enable shell integration marks adding the "experimental.rightClickContextMenu": true element to your Windows Terminal settings.json, you’ll have handy commands.

  • When the distro is being installed, a progress icon will appear on the Windows Terminal tab.

Fixed

  • After performing a Reset in App Settings, the distro can be installed again without reinstalling the app.

  • Now, if you configure Pengwin Enterprise as your Default Profile in Windows Terminal, right-click a folder in File Explorer and select Open in Terminal, it will correctly open in the desired directory.

  • The icon is now correctly displayed in the Windows Terminal tab with the default dark theme.

Existing users can update immediately by running $ update.sh.

Report bugs and suggestions here.

More about Pengwin Enterprise: Click here

-The Pengwin Team

Announcing built-in SystemD support in Pengwin Enterprise

SystemD is not supported officially in WSL and the lack of it imposes the following limits:

  • Services cannot be started using the familiar systemctl and the daemons must be started manually.

  • For RedHat and SUSE like distros, neither the service command can be used to start services.

  • Use snaps

  • Run Gnome desktop

Pengwin Enterprise 7.9.1 and 8.6.1 include SystemD support

Traditionally bringing SystemD to WSL implied using workarounds or scripts to be able to start the systemd daemon with a process id 0. We based our implementation on one of them, the one-script-wsl2-systemd by Dani Llewellyn. Upon updating to 7.9.1 or 8.6.1 versions, you’ll see the following changes:

  • A new start menu entry called Pengwin Enterprise 7/8 (SystemD)

 
 
  • A new menu entry in Windows Terminal

 
 
  • New options for run at Windows login

 
 

Starting SystemD

The SystemD support is entirely optional, and you can start it or not, depending on what you need to do. You can use the Start Menu shortcut, the Windows Terminal profile, via command line, execute: wle -s / pengwinenterprise8 -s, or inside a running instance sudo start-systemd

NOTE: You don’t need to wipe your actual installation; when you start SystemD for the first time, it will update everything for you into your existing instance.

Some examples

Ok, I have SystemD; now what? Let’s see some helpful use cases:

The SSH server is started automatically

First, install prerequisites sudo yum -y install iproute openssh-server openssh-clients

And enable ssh sudo systemctl enable --now sshd

Let’s get the IP address with ip address show dev eth0

And ssh into it

Sadly the WSL2 IP address changes on every restart. Let’s use hostnames instead:

  • Edit the /etc/wsl.conf to establish a custom hostname. Add a hostname entry in the [network] section with the hostname that you like

  • Install avahi with sudo yum -y install avahi and enable it with sudo systemctl enable --now avahi-daemon

  • Terminate Pengwin Enterprise (wsl.exe --terminate pengwinenterprise8 or wle) and start it again with SystemD.

  • Now connect using ssh but using the hostname.

  • In RHEL you may also need to open the port in Firewall: sudo firewall-cmd --permanent --add-port=5353/udp and sudo firewall-cmd --reload

Install GNOME desktop

Let’s level it up and install a full desktop. First, edit the /etc/wsl.conf to establish a custom hostname. Add a hostname entry in the [network] section with the hostname that you like as we did in the previous example:

Now install Gnome using:

  • Pengwin Enterprise 8: sudo yum group install -y Workstation

  • Pengwin Enterprise 7: sudo yum group install 'GNOME Desktop'

  • RHEL7: sudo yum group install 'Server with GUI'

When it finishes, you’ll need to configure the locale with localectl set-locale LANG="en_US.UTF-8"
The last step is to install the remote desktop support xrdp

  • First, install the EPEL repository: sudo yum -y install epel-release or sudo yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm for RHEL

  • Then XRDP: sudo yum -y install tigervnc-server xrdp and enable it with sudo systemctl enable --now xrdp

  • In RHEL you may also need to open the port in Firewall: sudo firewall-cmd --permanent --add-port=3389/tcp and sudo firewall-cmd --reload

  • Terminate Pengwin Enterprise (wsl.exe --terminate pengwinenterprise8 or wle) and start it again with SystemD

Now open the Remote Desktop Connection or Remote Desktop app from the store (recommended) and put the hostname you defined in the Computer or PC name field. Also, you can specify the username and if you want it to save the password

And here is

Install and run Snaps

Once you started with SystemD, you can install SnapD using the standard steps for RHEL:

  • Create the symbolic link for the classic mode: sudo ln -s /var/lib/snapd/snap /snap

  • Check if everything is ok with snap version

  • Install an example snap: sudo snap install hello-world

  • And run it: snap run hello-world

Installing a snap with GUI suppport

What about a graphical application? Let’s try with IntelliJ IDEA. sudo snap install intellij-idea-community --classic

Note for Windows 11 users. GUI support with snaps is not currently supported on WSLg in Pengwin Enterprise 7-8. You’ll need to disable WSLg editing winhome/.wslconfig, /etc/wsl.conf or creating a startup file (recommended) with: echo 'unset DISPLAY' | sudo tee /etc/profile.d/00-nowslg.sh and use the traditional methods used in Windows 10 installing an X Server like VcXSrv or X410, Pengwin Enterprise will be configured automatically to use it.

Windows 10, you’ll need a running X Server in Windows such as X410 or VcXsrv.

IntelliJ IDEA installed as a snap in Pengwin Enterprise

Note that for Windows 10, you’ll need a running X Server in Windows, such as X410 or VcXsrv

Starting your services at Windows log-in

You can instruct Pengwin Enterprise to run at Windows startup with SystemD, thus starting your services. Just go to the App Settings and activate the preferred option. The No Window option won’t show any console upon start.

 
 

Starting services in Pengwin Enterprise without using SystemD, also available for WSL1

Many services like SSH, Avahi, and XRDP don’t require SystemD in order to be run. But starting them manually can be tedious. This is why this update to Pengwin Enterprise includes a script that can be used to start services using the systemctl syntax. We called it wslsystemctl and it is based on a solution made to start services in a docker container in an easy way. For more information on the source check: Docker SystemD Replacement

Starting SSH

  • Run sudo wslsystemctl start sshd-keygen@ecdsa.service (sudo wslsystemctl start sshd-keygen in Pengwin Enterprise 7) only the first time to generate the key.

  • Run sudo wslsystemctl start sshd

Starting your services at Pengwin Enterprise start without SystemD

You can add the command sudo wslsystemctl default to your .bashrc so your services will be started.

echo "%wheel ALL=NOPASSWD: /usr/bin/wslsystemctl default" | sudo EDITOR="visudo" tee /etc/sudoers.d/start-services
echo "sudo wslsystemctl default 2>/dev/null">> $HOME/.bashrc

Known issues

The SystemD integration is a work in progress; some things don’t run well or are incompatible. Our piece of advice is that use SystemD only when you need it. Let’s see some of them and workarounds.

WSL Store edition

You may experience crashes or wsl shutdowns when using Remote Desktop, and a desktop environment served via XRDP. Also, the interoperability between WSL and Windows begins to fail. The advice is if you experience stability problems, uninstall the Store version.

WSLg

Out of the box, GUI applications won’t work in WSLg if Pengwin Enterprise is started with SystemD; we are still working on that. The situation is worse if the application is packed as a snap. Some workarounds:

  • The best way is to bypass WSLg entirely and use an X Server in Windows as we do in Windows 10. With the following command, WSLg will be disabled just for Pengwin Enterprise: echo "unset DISPLAY" | sudo tee /etc/profile.d/00-nowslg.sh

  • Another way is to use Wayland instead of XWayland; it won’t work with snaps unless the Wayland plugin is packed into the snap. For it, we need to install the Wayland plugin and define some environment variables.

 
sudo yum -y install qt5-qtwayland 
export QT_QPA_PLATFORM=wayland 
export XDG_RUNTIME_DIR=/mnt/wslg/runtime-dir
  • if you installed any desktop environment like the previous examples, the GUI applications would run perfectly inside.

Start menu shortcuts won’t be generated for snap applications

We are working to bring an alternative for this because SystemD must be started before trying to use the snaped application.

Acknowledgments 

🏆 Dani Llewellyn - for her hard work making it possible to have SystemD and Snaps together with WSLg with a single and easy-to-use script.

🏆 Guido U. Draheim - for creating a script that allows WSL users to start services without having to start SystemD, also helping WSL1 users.

🏆 carrizo - for integrating both scripts into the image and the update.sh script, and making it possible to call them transparently from the launcher.

Conclusion

There is still work to do, but we want to know what you do with it; please share your impressions and use cases in the comments.

Enjoy it!!

Pengwin Enterprise 8.5 released with GPU acceleration on Windows 11

Pengwin Enterprise has been upgraded to Enterprise Linux 8.5, with an important addition, GPU Acceleration in WSL2 in Windows 11. Pengwin Enterprise comes with Mesa preinstalled, so you can install your favorite 3D modeling application like Blender and take advantage of your GPU in Windows 11.

Pengwin Enterprise 8.5.0

  • Upgraded the Windows Subsystem for Linux (WSL) distro to Enterprise Linux 8.5, personal version was upgraded to Rocky Linux 8.5 and corporate version to RHEL 8.5.

  • Recompiled the provided Mesa 21.1.5 to include the Microsoft Direct 3D driver making Pengwin Enterprise 8 the first enterprise Linux distribution to have GPU acceleration in Windows 11.

  • Fixed an error preventing some users to launch Pengwin Enterprise 8 from Windows Terminal.

  • If you have Windows Terminal 1.12, Windows 11 and set Windows Terminal as the default console, when you open Pengwin Enterprise 8 from start menu, it will launch in Windows Terminal with the right profile selected.

Existing users can update immediately by running $ update.sh.

Report bugs and suggestions here.

More about Pengwin Enterprise: Click here

-The Pengwin Team

Announcing Pengwin Enterprise 8

The wait is over! Pengwin Enterprise supporting Enterprise Linux 8 distros in WSL has arrived.

The personal demo version is Rocky Linux 8 based

We rebased our store version from Scientific Linux 7 to Rocky Linux 8. You can get it here.

Pengwin Enterprise for organizations is now in 8.4

Besides Rocky Linux that was mentioned before, Whitewater Foundry can customize an in-house WSL build of Pengwin Enterprise 8 based on RedHat Enterprise Linux 8, Centos 8 Stream, and Oracle Linux 8.

With renewed look

We not only refreshed the logo but also Pengwin Enterprise 8 includes a custom Windows Terminal profile with menu icon, background, and custom color theme, to better integrate the experience with Windows Terminal.

Click here for more info and here to check the personal version in Microsoft Store.

Enterprise Linux 8 on Windows Subsystem for Linux (WSL / WSL2)

Run Oracle Linux on WSL with Pengwin Enterprise (Updated 23-02-2021)

Pengwin Enterprise supports several enterprise Linux distributions, including Oracle Linux. You can upgrade to Oracle Linux completely free, no strings attached, using a handy script provided by Oracle. This is the exact same Oracle Linux that Oracle provides to its enterprise customers. And it ‘just works’ on the personal use demo build of Pengwin Enterprise built with Scientific Linux in the Microsoft Store.

101e08a1-58fa-4470-b85c-a4f89c8b802c.png
{1FEE154C-C58C-43B4-A06D-3097CDFA05C3}.png.jpg
{0A941B3E-4934-4DB5-8BDE-2852281A1B3F}.png.jpg

2.

Set a password for root and create a default non-privileged user. 

{2C760724-63F4-4D99-82CE-5C1BE700BB27}.png.jpg

3.

Change to root:

$ su -
{53623AF7-D003-46A1-9A16-56DF17962B38}.png.jpg

4.

Download and run Oracle's script: 

# curl https://raw.githubusercontent.com/oracle/centos2ol/main/centos2ol.sh | bash

That’s it.

If you are in WSL1 remove sudo due to it halts the distribution. Use su -c or su - instead.

# yum remove sudo -y

Bonus:

Install wslutilities

# yum install wslu -y
{99D2A3B5-BE21-489B-92D3-2058CCB19D07}.png.jpg

See more on Oracle Linux.

Oracle Linux has not endorsed Pengwin Enterprise.