Installing Cool-Retro-Term on Windows10
First of all, this document is just a recompilation of different resources that already existed on the web previously that I personally tested some ones did work and other not. I liked the idea to make a full guide from start to end so all of you could also enjoy playing with cool-retro-term on windows 10.
Personally I installed it on a windows 10 pro version. Fingers crossed!
Briefly, we are going to:
1- enable linux subsystem on windows 10
2- clone and compile cool-retro-term git source
3- connect to windows
4- package all execution under a custom made exe file using windows internal tools
5- edit our fancy exe to have its own icon
STEP 1 — Enable Linux Subsystem WLS on Windows 10
The first thing you should do is enabling developer mode. To get there:
-
Press windows key > type «Windows update and settings» > hit Enter
-
Click on «For Developers» tab on the left panel
-
Choose «Developer mode»
-
Restart if prompted
-
Press windows key > type «Power Shell» > right click > click on «Run as Administrator»
-
Copy-paste this on powershell:
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
-
Install your distro of choice (I’ve only tested with ubuntu).
After the whole installation finishes, go and press windows + r > type «bash» and hit enter. It will open a native full linux shell. The first time you open bash, the system will prompt a series of config parameters as user and password.
STEP 2 — Getting Cool-Retro-Term
If I remember properly, git was already installed, if not type:
Next, lets get to work. If you have any problem check the official repository guide
sudo apt-get update sudo apt-get upgrade sudo apt-get install qtchooser qt5-default qml-module-qtquick-controls qml-module-qtquick-dialogs qml-module-qtquick-localstorage build-essential qtdeclarative5-dev git clone --recursive https://github.com/Swordfish90/cool-retro-term.git cd cool-retro-term qmake && make cd .. sudo mv cool-retro-term /opt/cool-retro-term sudo ln -s /opt/cool-retro-term/cool-retro-term /usr/sbin/cool-retro-term
If all did go as intended and no dependency failed to install you should have now cool-retro-term properly installed as a direct command.
export DISPLAY=localhost:0
cool-retro-term &
STEP 3 — Connecting seamlessly to Windows 10
The problem right now is that we installed a console version of ubuntu and it does not have a way to display graphical guis so we are going to bypass this to windows using Xming-server. Download it from here.
After installing, execute xming server and we just need the last step, to tell ubuntu to use Xming.
export DISPLAY=localhost:0.0 cool-retro-term &
If you are ok like this you could do win+r > bash > type «cool-retro-term» and will open the retro term on windows.
STEP 4 — Packaging
Personally I liked the idea of having all done within a single doubleclick,without console on the background and without having to manually open xming server every time.
We are going to open windows+r>bash create a script somewhere of your preference (I called it «crt.sh» and placed on a scripts folder on my home directory)
Fill it with:
#!/bin/bash export DISPLAY=localhost:0.0 cool-retro-term
This launches our retro term linking to xming window server. Now we are going to call this script from windows. Create a new notepad file, type the following text changing the path where you placed the sh script and save with extension «.bat» i.e.: «crt.bat»
@echo off xming :0 -clipboard -multiwindow start /B "" "C:\Windows\System32\bash.exe" -c "sh /home/h3r/scripts/crt.sh"
Now this launches xming silently and runs the terminal but still opens a console on the background. What I did found is, there is a windows application called iexpress that lets you package scripts, unpackage, run install scripts, etc… we are going to use this tool to execute our bat file every time we click on it.
press windows key > type «iexpress» > right click and «run as administrator«
this will pop a wizard to configure our executable. Follow as:
- Create new Self Extraction Directive file
- Extract files and run an installation command
- Type some cool title like «cool-retro-term»
- No promt
- Do not display a license
- Add > include our .bat file
-
THIS IS AN IMPORTANT STEP: on «Install Program» type cmd /c youtbatfilename.bat
-
Hidden
-
No Message
-
browse and type your executable final name , AND check the option «Hide File Extracting Progress Animation from the User»
-
No Restart
-
Choose or not to save SED file, its a configuration file if you don’t want to repeat the whole process again in case you did type something wrong. AND THAT’S IT!
STEP 5 — Edit our fancy exe to have its own icon
Well, this is the first and the fastest solution I did found on the internet, it literally taken me about 30 seconds to have the new icons working.
- Download Resource Hacker & Open. The webpage style really scares but the software is simple and functional.
- File > Open : choose your recently created executable
- Open the icon folder, just select one
- Go to Action > Replace Icon > Open file with new icon : choose a new icon
Additional!
Web Tool to convert .png to .ico
Some icon pngs from Xodetaetl
AND THATS ALL!
I personally had to restart to see the new icon. I hope you had no troubles going through this guide. If you like, you can share a beer with me using PayPal ;).
Install Xserver on Windows side:
I will use chocolatey to install it but you may also download X server from the sourceforge page
Run this command in an administrator powershell prompt to install
In WSL Ubuntu, install the cool-retro-term
package using apt
:
1 |
sudo apt install cool-retro-term |
Add this to your .bashrc
file so WSL knows the address of the Xserver
I found this method to set DISPLAY
to be the most robust as it works even when your .wslconf
doesn’t have generateResolvConf=true
and when you are using a custom DNS server. The previous method I was using to set DISPLAY
would use the wrong address with my setup.
1 |
export DISPLAY=$(ip route list default | awk '{print $3}'):0 |
Now when you run cool-retro-term
you should get a window!
Making a shortcut to start cool-retro-term
is annoying since if you try to run it directly from a commandline in Windows, you will likely get this error (I also get this error when specifying the DISPLAY
parameter in the commandline):
1 2 3 4 5 6 7 |
C:\Users\Peter>bash -c cool-retro-term qt.qpa.xcb: could not connect to display qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found. This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem. Available platform plugins are: eglfs, linuxfb, minimal, minimalegl, offscreen, vnc, xcb. |
This will work, I think because it opens a login shell.
1 |
bash -c "bash --rcfile <(echo '. ~/.bashrc; cool-retro-term; exit')" |
Now wrap it in a vbs
script to hide the cmd.exe
window from appearing:
Set objShell = WScript.CreateObject("WScript.Shell")
objShell.Run "%comspec% /c start /B """" bash -c ""bash --rcfile <(echo '. ~/.bashrc; cool-retro-term -p DEFAULT_PROFILE; exit')""", 0 'Hide
And call this from a shortcut’s target field:
1 |
C:\Windows\System32\wscript.exe "C:\YOUR_PATH_HERE\cool-retro-term.vbs" |
Congratulations, when you click the shortcut you should get a cool-retro-term window without any other windows being spawned!
Время на прочтение2 мин
Количество просмотров9.8K
Источник: Microsoft
Во вторник компания Microsoft выпустила обновление для приложения командной строки Windows Terminal с новыми полезными функциями, включая поиск в окне консоли, открытие нескольких вкладок и опцию ретро-режима в стиле CRT.
«Windows Terminal — это современное, многофункциональное, производительное приложение для пользователей командной строки. Он включает в себя многие функции, наиболее часто запрашиваемые сообществом Windows, включая поддержку вкладок, форматированного текста, создание тем и стилей и многое другое. Основные новые функции обновления включают в себя возможность открыть несколько вкладок, поддержку символов Unicode и UTF-8, движок рендеринга текста с GPU-ускорением», — сообщает портал Bleeping Computer.
Функция поиска позволяет искать текст в открытом окне консоли, используя комбинацию клавиш Ctrl + Shift + F. Что касается нескольких вкладок, то по умолчанию терминал Windows будет отображать вкладки одинаковой ширины, однако размер вкладок можно настроить. Также Microsoft даст возможность выбрать определённый профиль, который будет открываться после использования сочетания клавиш, которое назначит сам пользователь.
Экспериментальную функцию стиля CRT Microsoft добавила для тех, кто испытывает ностальгию по эпохе ламповых мониторов. Microsoft предельно точно воссоздала ретро-интерфейс, включая классические мерцающие линии, которые пользователи могли видеть на мониторах до того, как мир переключился на плоские мониторы и ЖК-технологии.
Предыдущее обновление Windows Terminal включало в себя поддержку режима разделения экрана Split View. С этим обновлением пользователи получили возможность одновременно открывать несколько командных строк бок о бок на одной вкладке. Финальный релиз Windows Terminal ожидается в апреле этого года.
Как указывают в Microsoft, Windows Terminal — это приложение с открытым исходным кодом, и компания приветствует участие сообщества в его развитии. Описание проекта размещено на GitHub.
retro
terminal-emulator
crt
cathode-ray-tube
unicode
glyphs
A terminal emulator program mimicking old CRT terminals, featuring a retro GUI with Unicode glyphs and modern support
What is Cool Retro Term?
Cool Retro Term is a free, open source terminal emulator with a retro graphical user interface. It mimics the aesthetics of old cathode ray tube (CRT) terminals commonly associated with early personal computers of the 70s, 80s and 90s.
Despite the old-school visual style, Cool Retro Term has support for modern terminal features like Unicode glyphs, custom themes, tabs, splits, automatic command history and more. Its customizability allows users to tweak the scanlines, curvature, color scheme and other attributes to their preferences.
Cool Retro Term works on Linux, macOS and Windows. It can be used as a drop-in replacement for the default terminal emulator to bring back nostalgia while still taking advantage of modern terminal capacities that old hardware couldn’t deliver. The anachronistic contrast between retro graphics and new functionality is part of its novelty.
Overall, Cool Retro Term focuses more on form rather than just function. Its aesthetic style modeled after early computing terminals combined with present-day terminal features makes it appeal to retrophiles and command line users alike.
Cool Retro Term Features
Features
- Mimics the look and feel of old CRT terminals
- Customizable interface with multiple themes
- Unicode glyph support
- Tabbed interface to run multiple terminal sessions
- Scrolling buffer to view previous output
- Keyboard shortcuts
- Configurable fonts and colors
Pros
Nostalgic retro aesthetics
Lightweight and fast
Highly customizable appearance
Tabbed interface is convenient
Scrolling buffer allows reviewing previous output
Cons
Limited feature set compared to full-featured terminals
Configuration requires editing text files
No mouse support
Only available on Linux and macOS
Official Links
The Best Cool Retro Term Alternatives
Top
Os & Utilities
and
Terminal Emulators
and other similar apps like Cool Retro Term
Kitty terminal
Kitty is a terminal emulator that prioritizes speed, efficiency, and modern features. Some key aspects of Kitty:It utilizes GPU rendering to draw text, making everything from scrolling to opening new tabs much faster than traditional terminals.Supports Unicode and emoji out of the box with font ligatures for readability.Tab support allows…
ITerm2
iTerm2 is an open-source terminal emulator for macOS that serves as a replacement for the default Terminal application. It comes packed with useful features for developers, coders, and other power users.Some key features of iTerm2 include: — Split panes allow you to open multiple terminal sessions in one window for…
Terminator
Terminator is an open source terminal emulator application for Linux/UNIX operating systems. It provides a way to access the UNIX shell and run command-line programs and shell scripts. Some key features of Terminator include:Ability to split the window horizontally or vertically into multiple terminal panels. You can customize the arrangement…
Alacritty
Alacritty is an open-source, cross-platform terminal emulator written in Rust. It uses OpenGL for hardware-accelerated rendering, allowing it to achieve high performance and low latency. Some key features of Alacritty include:Fast terminal rendering thanks to the use of GPU accelerationExcellent performance for workflows involving a large amount of textCompatible with…
WezTerm
WezTerm is a GPU-accelerated terminal emulator and multiplexer designed as an alternative to traditional terminal emulators like gnome-terminal, iTerm2, or the default terminal app in Windows. It is written in Rust and aims to provide performance and features not found in other terminals.Some key features of WezTerm include:Hardware-accelerated text rendering…
Termux
Termux is an Android terminal emulator and Linux environment app that transforms Android devices into powerful, command-line-based computing platforms. It offers a Linux-like terminal interface, enabling users to run Linux utilities, install packages, and perform a variety of tasks typically associated with a Linux environment. Key Features: Terminal Emulator: Termux…
Windows Terminal
Windows Terminal is a modern, versatile, and user-friendly terminal emulator application designed specifically for the Windows command-line interface. Released in 2019 by Microsoft, it comes pre-installed in Windows 11 and is available to download separately for Windows 10.Windows Terminal provides numerous major improvements over the traditional Windows console host. Key…
Tabby Terminal
Tabby Terminal is a feature-rich, open-source terminal emulator that aims to provide a modern and user-friendly alternative to the default terminal app on Windows, Mac and Linux. It is compatible with most common Unix shells like zsh, bash etc.Some key features and highlights of Tabby Terminal include:Support for tabs -…
GNOME Terminal
GNOME Terminal is a popular, free, and open source terminal emulator for Linux and other Unix-like operating systems. It comes pre-installed with most Linux distributions that use the GNOME desktop environment, such as Ubuntu, Linux Mint, and Fedora. As a terminal emulator, GNOME Terminal provides access to the command line…
Yakuake
Yakuake is a drop-down terminal emulator designed for the KDE desktop environment. It allows users to quickly toggle open or close a terminal window by pressing the preconfigured hotkey, providing fast access to a fully-featured terminal in a streamlined manner.Among its key features, Yakuake provides:A Quake-style drop-down terminal window that…
Konsole
Konsole is a powerful and customizable terminal emulator for the KDE desktop environment on Linux operating systems. It provides access to the UNIX shell and enables running command-line programs, tools, and scripts.Some key features of Konsole include:Multiple tabbed terminalsSplit screen viewCustomizable appearance including fonts, color schemes, transparencyConfigurable keyboard shortcutsSupport for…
Cathode
Cathode is an open-source, modern terminal emulator for macOS that focuses on aesthetics, performance, and seamless integration with the macOS ecosystem. Developed by the creators of ITerm2, Cathode builds on years of terminal emulation experience to provide Mac users with a beautifully designed yet powerful terminal application.Some key features of…
Black Box
Black Box is an open-source flight data analysis and animation tool for Linux. It enables detailed analysis of recorded flight data by transforming raw flight recorder files into animated replays showing the flight in a 3D environment.Key features of Black Box include:Decoding and analysis of flight data from a variety…
Stjerm
Stjerm is a free and open-source, lightweight tiling window manager for the X Window System. It is designed to be simple, flexible, and keyboard-driven for efficient workflow.Some key features of Stjerm include:Dynamic tiling of windows to maximize screen usageCustomizable keyboard shortcuts for window navigation and controlSupport for floating windows and…
Qonsole
Qonsole is an open-source, cross-platform terminal emulator and system monitoring application. It is designed to provide an enhanced terminal experience as well as built-in tools for monitoring system resources and processes.Some of the key features of Qonsole include:Multiple tabbed terminals with support for different shells like bash, zsh, fish etc.Customizable…
Yeahconsole
yeahconsole is an actively developed, cross-platform, open-source console emulator and debugger targeting 6th and 7th generation video game consoles including the PlayStation 3, Xbox 360, Nintendo Wii U, and Nintendo Switch. It enables developers and hobbyists to test and debug homebrew software running directly on the console hardware.Key features of…
2022 Update
Check this article for updated and much simpler instructions using WSL2+WSLg. 🥳
Or you can keep reading below if you’re stuck with WSL1 for some reason.
I often work with Linux environments through SSH on my Windows machine. As most people who use the command line on a semi-regular basis, I like looking at available alternatives/customizations to the stock terminal emulator.
On Windows, you’ve got a lot of solid alternatives such as cmder or the myriad of cool-looking emulators using web technologies under the hood. (I especially like Fluent Terminal, which really gets my Win10 design language boner going!)
But this stuff man, it doesn’t have the bling. The hipster cred.
cool-retro-term is a terminal emulator I often wished I had on Windows, for no other reason than to look cool. Nobody really ever bothered to port it to run on Windows however(and I wouldn’t do it either tbh), so I swallowed my dreams of being an epic hacker and just opened up PuTTY for the umpteenth time.
Until now.
The Windows Subsystem for Linux nowadays just allows one to run the original emulator as-is with a simple X server port for Windows. I’ll be giving a short how-to list here, tested on Windows 10 1809.
Activate WSL and download the required Linux dependencies
I’ll let Microsoft speak for me on the first point. I used Ubuntu as a base distro, but you can probably manage with another one.
Once in your WSL terminal, install the few dependencies you’ll need:
sudo apt-get update sudo apt-get install libgl1 xfce4-terminal
xfce4-terminal is a hefty download, but without it I was unable to get keyboard input to work in CRT. The errors were linked to XKB, so you might be able to manage by only installing xkb-data or similar packages.
Download the cool-retro-term AppImage and extract it
The AppImage conveniently bundles up Qt and everything needed. WSL doesn’t have fuse support however, so you’ll have to extract it instead of running it as-is.
wget https://github.com/Swordfish90/cool-retro-term/releases/download/1.1.1/Cool-Retro-Term-1.1.1-x86_64.AppImage chmod a+x Cool-Retro-Term-1.1.1-x86_64.AppImage ./Cool-Retro-Term-1.1.1-x86_64.AppImage --appimage-extract
Close your Linux CLI for now.
Boot ‘er up with Xming
👉 Download and install Xming on the Windows side.
vcXsrv is another port of the X server to Windows that’s often recommended in X-on-WSL blogposts, but it didn’t work with CRT during my experiments. You can also try FreeXer, or Cygwin’s X server.
Once installed, just start it up and go back to Linux:
export DISPLAY=:0 cd squashfs-root ./AppRun
From here on, you can right-click on the terminal to load a different graphical profile or make a custom one yourself.
Basically everything works as-is — even urxvt mouse tracking!
Automating it all with some scripting
I jerry-rigged a pair of .bat/.sh scripts to start both Xming on the Windows side and CRT on the WSL side.
cool-retro-term.bat
start "" "C:\Program Files (x86)\Xming\Xming.exe" :0 -clipboard -multiwindow start /min wsl -d ubuntu ./crt.sh
crt.sh
cd ~/squashfs-root && export DISPLAY=:0.0 && ./AppRun
Caveats
- WSL doesn’t have GPU acceleration yet. This is entirely running in software and as you can see in the
htop
above, easily eats more CPU than those newfangled javascript terminals. 😐 - Pasting text into cool-retro-term works, but copying text from it doesn’t.
- You can encounter a segfault or two if you mess with the graphical settings too much in one session. Once a profile is saved however, I’ve encountered no crashes in the few hours I spent playing with this.
All things considered, this is basically a party trick at the moment and nothing else.
It’s pretty cool with ncmpcpp
though!