Old Abe's EWS workspace (experimental)

⛔️ Caution!
This section is highly experimental. EWS keeps changing their configurations pretty often so these steps may break anytime. I only try them out once at the start of the academic year.

Main Items

Some items I cannot live without on a terminal are:

  1. Ranger file manager

  2. AstronVim text editor

  3. LazyGit for a GitUI

  4. GDB Dashboard for debugging

  5. MidnightCommander for file transfers (advanced).

Now I have managed to get these working in my home directory without using sudo but I may also have more access rights than you – so your mileage may vary.

Ranger File Manager

Nice thing about Ranger is that it can be installed via pip which is standard package manager for Python.

The problem is that EWS does not give you a working copy of pip – or if they do, it is the system pip and we don't want to mess around with that. Ideally we should install things in an isolated virtual environment. Fortunately, Miniconda installation can take place in your home directory.

mkdir -p ~/miniconda3
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O ~/miniconda3/miniconda.sh
bash ~/miniconda3/miniconda.sh -b -u -p ~/miniconda3
rm ~/miniconda3/miniconda.sh

After installation run

source ~/miniconda3/bin/activate

To get miniconda working in your current terminal. To have it always work, run

conda init --all

The last two commands should have activated the (base) environment from Conda.

Now that we have a working installation of pip we should be able to run:

pip install ranger-fm

to install the Ranger file manager.

After installation completes, just run ranger from your terminal and voila, a sensible file manager!

Read more about configuring the Ranger themes on the colorschemes repo.

AstronVim text editor

⚠️ Note
An old edition of these instruction was installing LunarVIM. But the developer behind LunarVIM has since moved on and now it is broken with recent versions of NeoVim.

Before proceeding it is highly recommended you learn the basics of the vim text editor. SSH into EWS Linux and run from the command line

vimtutor

Finish the tutorial before proceeding!

AstronVim requires you to first have neovim (a mightier version of plain vim) installed. We cannot do sudo apt or sudo dnf or anything of that sort because we don't have admin rights. So we need to download and make do with a precompiled binary of neovim.

Here are the steps:

Now that we have neovim installed, we should be able to install AstronVim using the bash commands provided on their installation page: https://docs.astronvim.com/#-installation

The first start-up will take some time due to it downloading and collecting necessary packages and plugins. After that it should be relatively fast to open nvim. You don't need to perform any of the Setup steps except maybe installation of a Langauge Server. I recommend clangd (more info). Run from nvim in command mode:

:LspInstall clangd

LazyGit

This is now easy. Download the right version for EWS PC's from Github.

Here is the link: https://github.com/jesseduffield/lazygit/releases/download/v0.45.2/lazygit_0.45.2_Linux_x86_64.tar.gz

Use wget to download it to your home directory and tar xvf to extract it. Then just move the executable lazygit to a directory already in your path.

mv lazygit ~/.local/bin
⚠️ Note
Above will not work if that folder is not in your path. In that case make the directory ~/.local/bin and then add export PATH="$PATH:/home/<yournetid>/.local/bin/" to the bottom of your .bashrc file in your home directory.

Now you can invoke LazyGit from the terminal! I usually alias lazygit to lg.

GDB Dashboard

If you have successfully done the above, I think GDB Dashboard should be a piece of cake.

wget -P ~ https://github.com/cyrus-and/gdb-dashboard/raw/master/.gdbinit

And install (with (base) from Conda activated):

pip install pygments

MidnightCommander

Midnight Commander offers a dual-pane file manager which makes moving things around a breeze. In addition, it offers the ability to have a remote server show up in the second pane!

To be honest, this doesn't require mc to be installed on the target machine so much as your personal/local machine. If you got mc installed and are curious on how to use it for file transfers, look at this link. Just be sure to use the shell link option.

All rights reserved by ECE220@Illinois. Design by Asher Mai & Ivan Abraham.
Last modified: January 16, 2026. Website built with Franklin.jl and the Julia programming language.