Thursday, July 12, 2018

Making Use Of Chrome's Ozone-GBM Intel Graphics Support On The Linux Desktop

Recently, I published a blog article about making Use Of Chrome's Ozone-GBM Intel Graphics Support On The Linux Desktop. This is about using ChromeOS graphics stack for a regular Linux system.  This article was also mentioned in Phoronix.

Originally, my old colleague started working on this a long time ago, but it has been broken since then. So I have been trying to enable ozone-gbm on a Linux system because this solution would be useful for embedded systems. I'm making a Yocto recipe for this and will open it soon.

Thursday, May 24, 2018

Rust & DRM

I was surprised that there are many low-level graphics projects written in Rust and I started looking into one of them: drm-rs. Then, I added an example for handling page-flip event.

drm-rs is a subproject of Smithay that is a wayland compositor written in Rust. It allows Rust applications to access the Direct Rendering Manger(DRM), a subsystem of the Linux Kernel. So, we could directly paint something into a frame buffer and render it on the display using DRM APIs.

Friday, May 04, 2018


I attended BlinkOn9 from April 18 to 19, 2019. Here is the official page:, presentations, and Lightning Talks.

At this conference, I talked about acelerating graphics performance with ozone-gbm on Intel based Linux desktop systems: explained what kind of hardware accelerations have been applied to Intel -based Chromebook and how we can use them on a Linux desktop.

Here is a demo video on Youtube:

Wednesday, September 27, 2017

Setting up NFS in OpenStep

If your server or host PC supports NFS,  you can set up shared directories for OpenStep. For example, if the shared folder is nfs://, you can add the imported directory in as follows:

Run mount command in OpenStep to mount a remote directory as follows:
mount -t /coreonion 


Wednesday, September 20, 2017

Installing OpenStep 4.2 on Parallels

NextStep is one of the advanced operating systems in 90s. You may understand why it is by watching this video:

Every features Steve Jobs introduced in this video was possible in 1992, which is amazing. So I've dreamed of using NextStep since I was aware of it, but I've never seen a running demo and just saw a NexTCube. By chance, I found instructions how to install OpenStep 4.2 on Parallels. Finally, NexStep(OpenStep4.2) started running on my machine. o/

If you want to run OpenStep 4.2, follow this instruction. The only problem is that network doesn't work so it needs to install a network driver. I found the solution by googling, but the link of NE2000 disk image( was broken. Fortunately, I was able to recover the link from so you can download it.

Network setting:
1) Install the NE2K driver;
2) Shut down. Under Boot Order, make sure the hard drive is the first device, and add ""; in the boot flags.

3) Set the shared network. Reboot.
5) Open Under Local choose "use local domain only".

6) Assigned one of available IPs in your local network. Let the machine Reboot;
7) Add a name server in /etc/resolv.conf

Installing developer tools: there is a good video on Youtube:

The next step is to write some Objective-C code with this book and download some applications from


Thursday, August 24, 2017

Working on the Servo project

I started working on the Servo project. Actually, my first open source project was Mozilla so I was involved in the Korea Mozilla community. During the time, I contributed to Fennec browser by fixing bugs and localization. Anyway, this blog article made me work on Mozilla again.

I landed a simple patch and am working on adding the ellipse API to Canvas API. I see many missing features so it looks like the blue ocean for me compared to Chromium project.

Wednesday, March 01, 2017

Enable to open multiple file-pickers in Chromium for Linux

Sometimes, we don't know exact requirements or expect user behaviors while developing or fix something. I fixed the file-picker modal issue in Chromium for Linux last year. At that time, the reviewer and I thought that there would be no case to pop-up multiple file-pickers, but it happened  since M55 when you follow the following steps:
1) Enable "Ask where to save" in settings.
2) Open 2 tabs of e.g.:
3) Wait for 2 downloader windows, and close/cancel/etc both
4) Freeze or crash

Here is a video to reproduce the problem.

When file-picker is opened, it disables event listening of the main host window. Then, the user closes the file-picker, it enables the event listening. Now, the host widow has a counter to check the number of the open file-pickers and it doesn't disable the event listening if there are any open file-picker. The event listening can be enabled when the last file-picker is closed. Here is the fix.
Anyway, you may see the fix in M58(Apr 25th, 2017)