A Linux Desktop - Chicago-style
- What is this setup made of?
- Operating system
- Desktop environment
- Chicago95
- Applications
- More Applications
- Tweaks
- Games
- See Also
- Acknowledgements
When I stumbled upon Grassmunk's Chicago95 (a Windows95-style theme for XFCE/ GTK2/ GTK3) earlier this year, it inspired me to set up a Linux-based mobile desktop (notebook) that not only looks and feels like classic Windows - but also integrates well in a modern Microsoft-centric enterprise environment.
This is how the result looks like:
What is this setup made of?
While the graphical concept and aesthetics of this setup are mainly driven by XFCE (xwdm) and the Chicago95 theme, the consistency of the user experience comes from limiting everything to the use of GTK-based applications.
The integration with Microsoft Windows-centric environments is achieved by software components like Samba, CUPS, XfreeRDP and others.
Below you'll find the essential steps and resources to achieve this setup.
Operating system
I always start with a clean (expert-mode) Debian installation without any additional packages except the base system. On bare-metal I'm usually installing a targeted kernel/ initram.
Consider installing everything on an encrypted file system: If your device gets lost/ stolen/ confiscated for any reason, at least you won't have to worry about other people accessing your system and data.
Desktop environment
Install the X Window System and the Xfce Desktop Environment:
# apt install xorg xfce4
Chicago95
Chicago95 is available on GitHub as well as packaged for a few Linux distributions. I ended up using a combination of both..
Either way I had to install a few packages myself:
# apt install lightdm-gtk-greeter-settings
# apt install gobject-introspection
# apt install xfce4-whiskermenu-plugin
# apt install qt5-style-plugins
# apt install qt5ct
# apt install wget
# apt install curl
# wget http://archive.ubuntu.com/ubuntu/pool/universe/x/xfce4-panel-profiles/xfce4-panel-profiles_1.0.10-0ubuntu1_all.deb
# sudo dpkg -i xfce4-panel-profiles_1.0.10-0ubuntu1_all.deb
Install Chicago95 using the package manager:
# echo 'deb http://download.opensuse.org/repositories/home:/bgstack15:/Chicago95/Debian_Testing/ /' | sudo tee /etc/apt/sources.list.d/home:bgstack15:Chicago95.list
# curl -fsSL https://download.opensuse.org/repositories/home:bgstack15:Chicago95/Debian_Testing/Release.key | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/home_bgstack15_Chicago95.gpg > /dev/null
# apt-get update
# apt install chicago95-theme-all
Enable Chicago95 for the lightdm-gtk-greeter to get a themed login screen:
# lightdm-gtk-greeter-settings
- Theme: Chicago95
- Icons: Chicago95
- Background: Color #008081
The GitHub repository contains detailed instructions on how to enable the theme. Being lazy I ended up running the installer available from the Github repository, which redundantly writes some files already written by the package manager, but comfortably runs most of the numerous steps needed to enable the theme, e.g. configure the taskbar, menus, icons etc. pp.
$ chmod +x installer.py
$ ./installer.py
Applications
As mentioned earlier, choosing applications that make use of GTK generally makes for a rather consistent look and feel of the whole environment. These are some of the applications I'm using:
Terminal emulator
Chicago95 did a great job resampling the classic Windows command window, although I opted to not change the prompt to DOS-fashion.
# apt install xfce4-terminal
By the way: Midnight commander is not only a great file manager, but an excellent SCP-client, too: Use mc's command prompt to access a remote directory using SCP: cd sh://user@server:port/directory
File manager
Thunar (Xfce's default file manager) is a good choice. To make it work with SMB-shares and archives, a few additional packages need to be installed:
# apt install libsmbclient
# apt install smbclient
# apt install gvfs-backends
# apt install thunar-archive-plugin
# apt install unrar
Fuzzy Search
github.com/cboxdoerfer/fsearch
From the official repository: "FSearch is a fast file search utility, inspired by Everything Search Engine. It's written in C and based on GTK3." As mentioned, there's a similar tool for Windows called "Everything" from voidtools. They're pretty handy and something you'll want to have around once you got used to them: The results you can see in the screenshot below are listed "immediately" - you don't have to wait for a search-run to take place.
Install build dependencies:
# apt install git build-essential meson libtool pkg-config intltool libicu-dev libpcre3-dev libglib2.0-dev libgtk-3-dev libxml2-utils
Clone the repository:
# git clone https://github.com/cboxdoerfer/fsearch.git
Build and install:
# meson builddir
# ninja -C builddir install
By the way: There's a similar tool for the command line, called fzf (fuzzy finder). It can be used with files, command history, processes, hostnames, bookmarks, git commits, etc.
E-mail/ Groupware
Evolution with Chicago95 looks so old-skool cool - you can't not use it. It needs "evolutions-ews" to be compatible with Office365 accounts.
# apt install evolution
# apt install evolution-ews
Remote Desktop Access
# apt install freerdp2-x11
# apt install freerdp2-2
Get .rdp-Files for applications you need your favourite Remote Desktop Services server (farm) and open them:
$ xfreerdp Outlook.rdp /u:julius.kaiser
VMware Remote Console
As you can see, VMware Remote Console uses GTK, too, and aligns well with the overall setup.
Download and Install VMware Remote Console on Linux
Network Manager & Client VPN
Network Manager manages network connection and Dialup-VPNs.
# apt install network-manager
# apt instakk network-manager-gnome
# apt install openvpn
# apt install network-manager-openvpn
# apt install network-manager-openvpn-gnome
More Applications
GTK- (and some CLI-) based applications for common tasks.
- PDF Viewer
apt install evince
- Image Viewer
apt install geeqie
- Text Editor/ Simple IDE
apt install mousepad
apt install geany
- Menu Editor (freedesktop.org Menu editor)
apt install menulibre
- System Settings Editor
apt install dconf-editor
- Buetooth Device Manager
apt install blueman
- Taskmanager
apt install xfce4-taskmanager
- Screenshot utilities
apt install xfce4-screenshooter scrot
- Password-Manager
apt install gnome-passwordsafe
- IRC-Client
apt install hexchat
Tweaks
Windows super key to open the Start menu
Using the XFCE keyboard settings, it is possible to assing an arbitrary command (xfce4-popup-whiskermenu in this case) to the Windows super key. Unfortunately this makes the menu pop up for every key combination that uses the Windows super key as a modifier, too. There is a workaround based on a third-party utility (ksuperkey) for exactly that: to use the Super key both to open the start menu and as a modifier key in keyboard shortcuts.
Install the dependencies:
# apt install git gcc make libx11-dev libxtst-dev pkg-config
Clone the repository and compile from source:
$ git clone https://github.com/hanschen/ksuperkey.git
$ cd ksuperkey
$ make
Optionally install system-wide:
# make install
Configure ksuperkey to launch on login (configure a certain delay for ksuperkey, as the default value of 500ms is not enough):
Touchpad tapping
To activate touchpad tapping, navigate to the "Mouse and Touchpad" settings dialog, choose the touchpad device and activate "Tap touchpad to click".
Games
SimCity 2000
Being able to run SimCity 2000 (for Windows!) is crucial for such a setup. The Wine subsystem needs to be installed for a 32bit architecure too:
# apt install wine winetricks
# dpkg --add-architecture i386
# apt-get update
# apt install wine32
After that it's just copying your SimCity 2000 CD to a folder and running the SETUP.EXE & SC2000W.EXE.
See Also
There are many other projects reviving the late nineties computing asthetics on modern platforms - either as their primary objective or alongside higher goals:
- Redmond97 - A Win9x inspired theme for GTK3 and GTK2 developed for XFCE4
- WIN98SE Icon theme - Enhanced Classic icon theme (used with Win98 Second Edition, WinME, Win2K systems) from MicroSoft Memphis project for GNU/Linux inspired by Chicago95 theme
- progman - "[..] a simple X11 window manager modeled after Program Manager from the Windows 3 era."
- Not so Common Desktop Environment (NsCDE) - [..] a retro but powerful UNIX desktop environment which resembles CDE look (and partially feel) but with a more powerful and flexible framework beneath-the-surface, more suited for 21st century unix-like and Linux systems and user requirements [..]"
- SerenityOS - "[..] a love letter to '90s user interfaces with a custom Unix-like core. [..] Roughly speaking, the goal is a marriage between the aesthetic of late-1990s productivity software and the power-user accessibility of late-2000s *nix."
- ReactOS - "is a free and open-source operating system for amd64/i686 personal computers intended to be binary-compatible with computer programs and device drivers made for Windows Server 2003 and later versions of Windows." (Wikipedia)
- Simple Classic Theme - A somewhat hacky approach to bring back the classic shell on modern Windows platforms: "Winlogon uses a shared memory section for handling themes. By removing access to this memory section the Winlogon process can no longer manage themes so the default theme is used, the Classic Theme."
Acknowledgements
Many thanks go out to Tom Fichtner, who came up with ksuperkey and general feedback. To stray even further from god, he was the first to deploy this setup on a MacBook! :-)