< Blog

More notes on Red Star OS 3.0

March 31, 2020

Five years ago, I wrote a post on Red Star OS 3.0, the latest version of North Korea’s home-grown Linux distribution to make its way outside of the country’s walled garden. That post was one of the internet’s first guides on exploring this peculiar distro, so it gathered way more attention than I would ever expect. I’m now back with additional, more specific notes on Red Star’s built-in applications.

Installing from Windows

It turns out there is more to the install.exe Windows executable located in the installation disc. According to a comment in the previous post - as well as Google Translate - the error message displayed by that executable tells you to copy the installation files to your hard drive. Once I copied the DVD’s file structure to the Documents folder and ran install.exe from there, the error message changed to a confirmation request, which apparently asks if I want to reboot to continue.

Installation confirmation

Clicking the blue button reboots the system to reveal a new “RedStar Setup” entry on the Windows boot menu, set to start automatically after 1 second. That boot entry is automatically removed by the installer once it is up and running.

Windows boot menu entry

The installer pulls this off by copying a few boot files to the root of the Windows partition, then registering \RS\rsloader.mbr as a real-mode boot option - often used to chainload into other bootloaders - on Windows’ BCD (Boot Configuration Data); \RS\BCD is presumably a backup of the previous BCD. This is not an unseen tactic, as a few Linux distributions have also shipped Windows-based installation kickstarters in the past, which also leverage the Windows boot manager to start the Linux-based installer without asking the user to fiddle around with BIOS settings and boot menus.

Red Star Windows boot setup

Starting the installer in English is still possible by hammering the E key as soon as the Windows boot menu screen disappears. This will force the Grub bootloader to enter its command line editor. Add lang=en to the end, press Enter to save and B to boot.

grub command line edited

Another method is breaking out of the automatic boot (hammer any arrow key on the boot menu), booting into Windows and editing \m_rs.lst with a text editor which can handle UNIX line endings, such as WordPad or Windows 10’s Notepad. Run the editor as administrator, open that file, replace lang=ko with lang=en on the kernel parameters, and save. It’s also worth noting the additional parameters used by the installer to find itself:

Editing the boot file with WordPad

The installer’s disk utility refuses to alter the Windows partition containing the installation files in any way. You must leave some unallocated space or a partition for Red Star prior to booting the installer, or install to a different drive.

Can't touch the Windows partition

As with other Linux distributions, the installer adds a second boot menu entry which chainloads into the Windows boot manager.

Windows boot entry

Sogwang Office

The Sogwang Office suite is a fork of OpenOffice.org 3.0 with a North Korean language pack. The option to change the interface language was removed, but the English language pack is still present. Run the following commands as root to remove part of the Korean language pack, forcing all suite applications to load English text instead:

cd /Applications/SGOffice.app/Contents
rm RedStar/resource/*ko.res share/registry/Langpack-ko.xcd

It might be possible to change the language by editing configuration files, however, I couldn’t figure out where the language preference is stored within OpenOffice’s rather complex configuration system. Leave a comment if you happen to know something about OpenOffice’s internals.

Sogwang Office Writer

Crosswin

The Crosswin compatibility layer is a wrapper around Wine 1.2.2, consisting of a helper application and some Korean-only documentation. It’s an optional component which can be selected on the installer’s Customize window, though it appears you can install optional components after the fact by opening the Software Manager application, selecting the only entry on the list, clicking Modify and selecting the components to install (double-click expands the categories).

Once installed, Crosswin can be reached through the Applications > AppLink > [Korean text] 3.0 menu. The “Install” application provides a few presets for installing common software - apparently just Photoshop, which the North Koreans would have totally legitimate copies of - as well as an Add/Remove Programs interface, a shortcut to winecfg and a font installer.

Crosswin software installer

I’ve attempted to install Photoshop CS2 using the preset, but it didn’t work. After clicking Install, the application asks for some executable, which I assume to be Setup.exe on the Adobe CS2 disc. Selecting it starts the installer, which displays a splash screen for a few moments, closes itself, then the application claims Photoshop was successfully installed, which it clearly wasn’t.

Crosswin claims Photoshop CS2 is installed

Crosswin can also be invoked by opening .exe files from the file manager. The screenshot below shows a few old Windows XP applications which I’ve opened directly from another drive. Paint doesn’t let you type in text, the Calculator is braindead, and 3D Pinball (minimized) is unplayable due to the plunger and flippers not actuating. The only 3rd-party application on that drive was the PC version of Sonic & Knuckles, which runs fine but with no music due to the lack of a MIDI synthesizer.

Windows XP applications on Crosswin

APM

The LAMP stack, oddly named APM - which definitely stands for Apache, PHP, MySQL - is yet another optional component. When installed, it adds a little menu bar gadget allowing you to control the stack’s services. The menu is produced by the APM Manager application, one of the system’s numerous fully custom applications which were never translated to English.

The stack provides a Webmin management interface on http://localhost:10000 - selecting the last option on the aforementioned menu will open that URL on Naenara Browser. Run the following commands as root to change Webmin’s language to English:

sed -i 's/ko_KP.UTF-8/en/g' /etc/sat/config /usr/share/sat/web-lib.pl
service sat restart

Refresh the page to apply. Log in as root with the password you set when enabling root access.

The Webmin install (located on /usr/share/sat) is pretty barebones, containing just the Apache Webserver, MySQL Database Server, PHP Configuration and Webmin Users modules. None of the modules Webmin provides for managing itself or the system as a whole are present. For what it’s worth, the limited selection of modules reduces the attack surface - Webmin’s system management modules have faced many CVEs over the years - but iptables on Red Star is configured to block all incoming connections from outside the machine by default anyway.

/Applications

Red Star mimics the OS X .app bundle format for its applications. The executables themselves are inside Contents/RedStar, and the name, icon and executable path are determined by Contents/info.desktop, a standard KDE .desktop file. Some apps like Sogwang Office and GIMP are contained entirely within the bundle. They didn’t go very far with mimicking the OS X filesystem structure, though; /System/Library is a symlink to /usr/share and that’s about it.

Here are all the other applications I haven’t covered:

In the Utilities folder:

In the AppLink Development folder:

Further developments

Red Star 4.0 Server was released (page 6) around January 2019, reportedly featuring UEFI support and improved server management tools. It has not leaked yet as of writing.

Last update: Sep 19, 2023