Technically Impossible

Lets look at the weak link in your statement. Anything "Technically Impossible" basically means we haven't figured out how yet.

MID (MaXX Interactive Desktop) on Clear Linux via Ubuntu container with Distrobox


Abstract

Distinctive factor of Clear Linux is

  • highly optimization for Intel platforms
  • power consumption, especially idling efficiency*1

But there is trade-off. Although desktop edition of Clear Linux is provided, this is not their focused area, and available application packages are also limited.

Clear Linux OS is not intended to be a general-purpose Linux distribution, suitable for novice end-users. While we ship common applications, our purpose isn’t to make an OS for routine desktop tasks and provide immunity from all security threats in all situations.

About — Documentation for Clear Linux* project

Then, how about this idea? Clear Linux works as container host rather than desktop client, and run container with other ease-to-use distro on it for desktop.
Example, running Ubuntu container with MID on Clear Linux, and directly login it through Clear Linux login screen. Distrobox makes it possible.

This post introduce its implementation steps.

Assumption

version
Clear Linux Desktop*2 36470
Distrobox*3 1.3.2
Ubuntu container*4 22.04
MID*5 2.1.1

For installation steps of Distrobox on Ubuntu container and MID installation, refer linked topics in each chapter.

Works on Clear Linux - Installing Docker, Distrobox, and Ubuntu container

impsbl.hatenablog.jp

  • Assumption and Resources
  • Preparation
    • Update catch-up of Clear Linux
    • Docker installation and configuration
  • Distrobox
    • Installation
    • Ubuntu container

Install Docker, Distrobox on Clear Linux, and build Ubuntu container. Works related Mozc are not required.

"etc/hosts" should have next records.

127.0.0.1 localhost
127.0.0.1 [host name of Clear Linux]
127.0.0.1 [host name of Ubuntu container].[host name of Clear Linux]
Works on Ubuntu container

Next command was executed at the end of the previous chapter. Terminal indicates working on Ubuntu container now. Start installing MID at this circumstance.

distrobox enter ubuntu

impsbl.hatenablog.jp

  • Install packages
  • Download and install MID

The linked topic is for WSL and initial condition of container is different. So, required packages are slightly changed including Asian fonts.
"apt install" command for this topic should be following. Packages are also listed.

sudo apt install -y cpp fhist fonts-noto fonts-dejavu fonts-noto-cjk fonts-noto-cjk-extra freeglut3 libgtk2.0-0 libjpeg62 libtinfo5 nload pavucontrol rcs x11-apps x11-utils x11-xserver-utils xfonts-100dpi xfonts-75dpi xz-utils


List of packages

  • cpp
  • fhist
  • fonts-noto
  • fonts-dejavu
  • fonts-noto-cjk
  • fonts-noto-cjk-extra
  • freeglut3
  • libgtk2.0-0
  • libjpeg62
  • libtinfo5
  • nload
  • pavucontrol
  • rcs
  • x11-apps
  • x11-utils
  • x11-xserver-utils
  • xfonts-100dpi
  • xfonts-75dpi
  • xz-utils

MID installation is finished, run next command to copy "maxx.desktop" to home folder.

cp /opt/MaXX/share/xsessions/maxx.desktop ~/

Distrobox commonizes home folder between host and container (Clear Linux and Ubuntu container). It means files in home folder can be referred from both sides.

Works on Ubuntu container is over. At next chapter, work on Clear Linux again.

Works on Clear Linux - Call MID with login to Clear Linux

GDM works on Clear Linux, and MID works on Ubuntu container. When MID is selected at GNOME login screen, Clear Linux runs Ubuntu container and call MID on it. Implement this gamic in this chapter.

First, check description of "maxx.desktop" copied to home folder.

[Desktop Entry]
Encoding=UTF-8
Name=MaXX Interactive Desktop
Comment=The MaXX Interactive Desktop - Indigo Release
Exec=/opt/MaXX/etc/skel/Xsession.dt
Type=Application
[Window Manager]
SessionManaged=true

Path defined at "Exec" should be replaced to the one for script to run Ubuntu container and call MID. This script is saved at home folder as "startMID.sh" with execution privilege.

xhost +SI:localuser:$USER
distrobox enter -T -n ubuntu -- bash -l -c '"/opt/MaXX/etc/skel/Xsession.dt"'

To call "startMID.sh", "Exec" of "maxx.desktop" should be replaced as following.

Exec=~/startMID.sh

And copy "maxx.desktop" to prescribed folder with next command.

sudo cp ~/maxx.desktop /usr/share/xsession/

Then, logoff from Clear Linux.

Direct run of MID from Clear Linux login screen

Clear Linux login screen has the option of "MaXX Interactive Desktop".

Login with this option, then MID on Ubuntu container is directly run.

Terminal indicates host name of Ubuntu container. It means current user is now on container.
And home folder includes next files.

  • maxx.desktop
  • startMID.sh

It means home folder is commonized between Clear Linux and Ubuntu container by Distrobox.