Skip to content

Installing and running lich in WSL using ProfanityFE

Ryan P. McKinnon edited this page Nov 28, 2023 · 4 revisions

WIP - Work in Progress - Not finalized - WIP

This page will go over the required steps and packages needed to install and run lich in WSL (Windows Subsystem for Linux). It is a moderately technical exercise, and you should be comfortable following technical documents/instructions before trying this, as this guide will not duplicate instructions available on other sites (for example setting up WSL itself).

Setup Windows Subsystem for Linux (WSL) environment

Install WSL2

Instructions with some troubleshooting steps for installing WSL on windows are available from microsoft.

Install your chosen Linux Distro from the windows store

It is recommended to go with kali-linux, as this distro also provides win-kex, which provides access to a non-X based gui. While a GUI is not required to run lich on linux, without it you do need to set up your login profiles on another PC which can run lich.

Update your linux install

It is always best to ensure your linux install is up to date after deploying it. As root run the following commands:

  • apt update
  • apt upgrade

Install Lich

Install pre-reqs

The following packages are needed either for lich/profanityFE, or the ruby gems required by lich/profanityFE.

autoconf bison build-essential libssl-dev libyaml-dev libreadline6-dev zlib1g-dev libncurses5-dev libffi-dev libgdbm6 libgdbm-dev libsqlite3-dev git

Use the package manager of your linux distro to install these. For kali-linux and other debian based distros this would be apt. As root, run

  • apt install autoconf bison build-essential libssl-dev libyaml-dev libreadline6-dev zlib1g-dev libncurses5-dev libffi-dev libgdbm6 libgdbm-dev libsqlite3-dev git

Install a ruby version manager

Install rbenv, a Ruby version manager. Add it to the PATH so that it will work outside of its own directory, and set it up to work when you launch the shell (terminal):

  • git clone https://github.com/rbenv/rbenv.git ~/.rbenv
  • echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
  • echo 'eval "$(rbenv init -)"' >> ~/.bashrc

Run the shell's launch script now to enable those two changes and get rbenv working:

  • source ~/.bashrc

Download the tools to let rbenv install Ruby on its own, then install Ruby 2.7.8 and set it to be our default version of Ruby system-wide:

  • git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build
  • rbenv install 3.2.2 -v
  • rbenv global 3.2.2

Compile and install required ruby gems

As root, run the following commands

  • gem install rake ascii_charts concurrent-ruby curses gtk3 sequel sqlite3 terminal-table tomlib

Download Lich5 & Profanity

You should create a directory where lich and profanity will be stored. The following assume you are in that directory

  • Lich5 - git clone https://github.com/elanthia-online/lich-5.git
  • Profanity Mahtra(new) fork - git clone https://github.com/MahtraDR/ProfanityFE.git
  • Profanity rcuhljr(old) fork - git clone https://github.com/rcuhljr/ProfanityFE.git profanity

Setup login profiles

Clone this wiki locally