Blog

WSL and VS-Code

Windows Subsystem for Linux (WSL) is really cool (currently at version 2, or WSL2). It allows use of some of the most popular Linux distributions from within, and alongside, Windows programs. As long as your PC meets the minimum requirements (which really are minimal), installation is trivial. Installation consists of typing “wsl —install” in an elevated command, powershell, or Windows terminal shell. With this approach, Windows installs the default distribution (which is Ubuntu) and then prompts for a username and password. After that, you find yourself in a Linux shell (bash).

I installed and played around with WSL quite a while back, but hadn’t made much use of it. That, however, has recently changed. I (finally) found some computer hacking training (don’t worry, I’m not doing anything nefarious) that both fits with the way I learn and is organized in (what is for me) an approachable way. If you want to learn computer hacking, check out HackTheBox.com. I’d started several other tutorials and trainings over the past couple of years with limited success, but I think HackTheBox is going to be a keeper. More on that in another, future, post.

To digress a bit, I was at first using Kali Linux installed in a Hyper-V virtual machine to do the hands-on exercises at HackTheBox. This worked pretty well, but there were a couple of minor drawbacks: (1) I had to start and stop the VM, which didn’t take long, but did take a bit of extra time (and clicks), and (2) transferring files between the VM and my main PC was less than seamless. Also, copy-and-pasting between the VM and my PC did not seem to work for me (maybe it was me, or maybe it’s not supported), and while that sounds like only a minor inconvenience, it’s something that would be really helpful. The nice part about the VM approach is that I had a full Kali Linux desktop GUI available where I could run a browser, a shell or three, and the Open Source version of VS Code (distinguishing between the Open Source and Microsoft versions will be important later).

Getting back to WSL, I looked and found that Kali Linux was one of the officially supported distributions. I installed it and poked at it for a while, and found that it did not include any (or at least most) of the hacking tools that basically come with Kali (note that I almost always install use the Kali NetInstaller and choose the “large” or “everything” option (I forget exactly how it’s described). A serendipitous search revealed them missing piece: “sudo apt update” followed by “sudo apt install kali-linux-large -y” fixed all the missing tools issues.

Some of the tools that are routinely used in the HackTheBox exercises run in a shell with no problem. Some, however, such as the Firefox browser, require a GUI to use effectively. Not knowing what would happen, but hoping it wouldn’t melt my PC, I opened the WSL Kali terminal, installed, and then ran, Firefox. Much to my delight it popped open a Firefox window – running in Kali – on my Windows desktop.

Encouraged by my success, I started the Open Source version of VS Code from the Kali terminal. It, too, popped open in a new window on my Windows desktop. Let me briefly digress here once again. I had been using Code in my Kali VM to take notes and keep track of relevant information about the HackTheBox exercises. This worked well, but the Open Source version did not seem to have the capability to sync my settings via my GitHub account. Not a deal-breaker, but definitely an annoyance.

With everything working, I decided to try doing the next HackTheBox exercise using Kali on WSL. Everything worked perfectly, and I was able to copy-and-paste between Firefox running on Kali and programs running directly on Windows. Performance was excellent, and I was able to use all of the desktop real estate provide by my 43” monitor with 4k resolution.

And now, finally, the point of this post…

In my VS Code configuration on Windows, I have several extensions installed, including the “Remote Development” extension pack published by Microsoft. I’ve used the tools in that pack to connect to Linux running either in a VM or on a Raspberry Pi and edit files on those remote file systems. One of the tools included – and one which I’d either not noticed or had ignored – provides easy, totally transparent connection to any of the Linux distros running in WSL. Clicking the “Open a Remote Window” button (the green button in the extreme lower left corner once the Remote Dev pack is installed in VS Code) opens a list of currently available distros in WSL. Clicking the name of the desired distro – in my case, Kali-Linux – connects to that file system and runs VS Code as if it was running there natively. Note that it does a little bit of setup on the remote system the first time, but it takes only a few seconds.

I’m probably the last person on the planet to know about this. Why didn’t someone mention it to me?

Cyberpunk 2077 Redux

I’ve finally played some Cyberpunk 2077 and I like it!


In a not-so-recent post (Cyberpunk 2077), I wrote about starting to play Cyberpunk 2077 again. Then, in a slightly-more-recent post (Why I Still Play GTAV), I again wrote that I was going to start playing it “…real soon now.” And, after some unexpected travel (another blog post altogether), I did start playing it again, and played for a reasonable amount of time (a total of 10.4 hours, according to Steam).

I played long enough to get to the part of the story where Keanu Reeves shows up as the in-game character Johnny Silverhand. For more info on this, check out this YouTube Video (caution: NSFW (“Not Safe For Work,” or around children) language. I’m far enough along that I’ve met Takamura in the cafe and talked with Johnny after Takamura leaves (hopefully this will not be a spoiler in the (unlikely) event that you decide to play the game).

At any rate, I’m enjoying the game a lot. I still have to look at the controller layout sheat pretty often, but I’m getting there. They say, “practice makes perfect,” but really practice makes habit. The more I play the better it will be.

The only downside to the game so far is that it’s a single player only game. It would be great to be able to play with friends… if I had any that played this game. Oh well.

Why I Still Play GTAV

I really am going to start playing Cyberpunk 2077…
real soon now!


My last blog post in the Video Games category was about Cyberpunk 2077. At the time I was excited to begin playing it, but, alas, as yet I have not played it very much.

That is not the fault of the game or the developers. By all accounts the game is much improved from it’s incarnation at it’s release on December 10, 2020. Also, the developers have been adding DLC (down loadable content) on a pretty regular basis.

Why, then, have I not played it very much? And why is GTAV in the title of this blog post? The answers to both of those questions are related. Sort of.

I have not started playing Cyberpunk 2077 in earnest because I want to create a new character and start over (not a big deal to start over because I never got very far before). This may not sound like much of a hurdle to playing the game, and, really, it isn’t. The character creation process takes a little bit of time, but that’s okay. The real hurdle – for me – is getting through the learn-the-controls-of-this-game-and-the-combat-and-driving-mechanics “mission” that occurs at the beginning of almost all modern (and not so modern) video games. When I think about learning a new set of controls at my, ahem, advanced age (for a gamer), I have an avoidance reaction. I’ve done it before, and I’ll do it again (hopefully), but it will feel unnatural for a while and I’ll be clumsy with it and I’ll have to split my concentration between that and the story game play until the mechanics are committed to muscle memory.

Which is, in large part, why I find myself still starting up GTAV Online when I just want to play for a short time to clear my head or occupy part of my mind so that the less conscious part can cogitate on other things. I’ve been playing GTAV since it was released back in 2013 (could it really have been that long ago?), so I don’t have to think about the mechanics or which controller buttons to use. I just think about what I want to do in the game and it just happens.

Some (many?) of you may be shocked to find out that I play a game that many consider vulgar (which some of it is), or one that is Middle Schoolish (which most of it is), or one that seems to glamorize criminal activity (I don’t think it does, but each is welcome to his own opinion). I play the mostly less vulgar online version of the game and ignore the sophomoric innuendo. As for the criminal activity… well, let’s just say that the game is a safe place to indulge in a bit of “stress relief.”

Finally, I absolutely intend to start playing Cyberpunk 2077 soon. Yep. Real soon now…

Cyberpunk 2077

My new favorite video game! No, really…


CD Projekt Red (also referred to as CDPR) released the video game Cyberpunk 2077 in 2020. The Wikipedia page for the game has more info (and it’s more objective) than I could possibly put into this blog post. I saw some pre-release information about the game and was interested enough to pre-order the Xbox version. Playing the game on day 1… left a little (or maybe more than a little) to be desired. However, CDPR has updated and upgraded the game over the last three years and now it is – in my opinion – living up to the expectations created by the pre-release buzz.

I’ve only just started playing it again with the latest update, and I plan to add more content soon.

Stay tuned…