Some items I cannot live without on a terminal are:
Ranger file manager
LunarVIM text editor
LazyGit for a GitUI
GDB Dashboard for debugging
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.
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 here.
LunarVIM again requires you to first have neovim
installed. We cannot do sudo apt
or sudo dnf
or anythning of that sort because we don't have admin rights. So we need to download and make do with a precompiled binary of neovim
.
When I tried, the standard neovim
release failed to run on EWS because they were using an outdated version of GLIBC
. Once again, fortunately, folks also keep compiling neovim
for these legacy systems.
Download the (unsupported) tarball from: https://github.com/neovim/neovim-releases using wget
:
wget https://github.com/neovim/neovim-releases/releases/download/v0.10.3/nvim-linux64.tar.gz
Extract it to your home directory using tar xvf <filename>
.
Rename it to something less cumbersome, mv <extractedname> ~/neovim
.
(Optionally) free space on your home directory by deleting the tarball: rm nvim-linux64.tar.gz
Add ~/neovim/bin
to your path by adding below line to your .bashrc
file in your home directory:
export PATH="$PATH:/home/<yournetid>/neovim/bin/"
Finally, restart your terminal or run source ~/.bashrc
Now that we have neovim
installed, we should be able to install LunarVIM using the bash command provided on their installation page: https://www.lunarvim.org/docs/installation
Say yes only to the options for treesitter-cli
and pynvim
and no to everything else.
Finally, add the path to the LunarVIM binary to your path:
export PATH="$PATH:/home/<yournetid>/.local/bin/"
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
Now you can invoke LazyGit from the terminal! I usually alias lazygit
to lg
.
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
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.