Linux via Windows Week 2

Is there really such a thing as a failed experiment? Don’t you just find a closed door at the end of it and isn’t knowing the door is closed worth something?

That’s like what got me started with Linux. I was a Windows guy at college and Vista was going to update what I loved about XP. So I bought a machine with the ‘designed for Windows Vista’ sticker and then suffered through a tremendously frustrating experience that was alleviated by rediscovering Linux. For me the Linux experience has almost always been via the desktop, not the server application most folks know it for.

Two weeks ago I decided to try and use the Windows’ enabled versions of Linux via Hyper-V and WSL. This was in part inspired by Jason’s challenges on Forbes and the podcast ChooseLinux (although in reverse). On Saturday I partitioned my hard drive and reinstalled KDE Neon so I could dual boot again. I made it two weeks and two weeks was too painful.

As you’ll remember from my first post I’m a casual Linux user. It solves problems for me in the home, it’s fun to tinker with, but I’ve never written code and my shop at work is mostly Windows. Most of my output at work is done using MS Office.

There are likely very good reasons for code writers and seasoned professionals to have Ubuntu so easily installed via Hyper-V and the WSL ready to go. In some situations I could imagine that having these environments will allow people to mock-up and test applications on the same machine that has their MS Office install. But in that scenario they’ll still probably need another Linux machine to actually get the work done.

Also, I’m not one of those guys.

I love the networking tools Linux has. The Ubuntu Podcast taught me sudo netdiscover which shows the machines one one’s network. Similarly Kali Linux available via WSL has lots of fun networking tools, but none of these networking tools work in the WSL because it doesn’t have access to the network stack–so for my purposes it makes it virtually useless.

While the networking tools do theoretically work in Hyper-V they give no practical output because the Hyper-V instance isn’t bridged (like you could set if you were running Linux in a VirtualBox instance).

What I do appreciate is that Microsoft was willing to invest in this first historic iteration of making parts of a very powerful operating system available on its platform. When it comes down to it the parts they’ve enabled though, aren’t the parts I value.

I can’t say that I’ve conclusively proved that Microsoft’s implementation of Linux under Windows can’t work for some people. My use case is narrow. The functionality provided by Microsoft’s implementation of Linux is also narrow and there’s little overlap between the two.

I think this is just another example of what makes Linux great. It satisfies so many broad use cases! Microsoft’s implementation can’t possibly take over the breadth or even a majority of the cases out there where Linux solves real problems for people.

My use case is mostly outside of their current offer, but I’m grateful they’re offering what they do. I now have two applications I can run on my Windows machine that I didn’t have before: SSH and youtube-dl.

SSH works as expected.

Youtube-dl is more emblematic of how I see the whole experiment. It functional, but not elegant. Once a file downloads from youtube-dl all I have to do is navigate to C:\Users\username\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu18.04onWindows_79rhkp1fndgsc\LocalState\rootfs. Which is so intuitive right?

Maybe there’s more functionality buried in what they’ve provided, but I don’t think the time it will take to figure it out is as effective as rebooting into KDE Neon.

Linux via Windows Week 1

I am a casual Linux user. It’s been my daily driver. I use it on a couple of home servers, and I love the community behind the operating system, but I’ve never gotten past the point where I don’t feel like a novice. I see how much I have to learn and that list never seems to get any shorter.

The good folks over at JupiterBroadcasting have remarked over the course of several episodes that people might never switch to Linux on bare hardware since Windows enables Linux through a few different avenues.

Also shows on the network have been highlighting the try-Linux challenges inspired by Jason Evangelho of Forbes. So I decided to do a bit of a reverse challenge. Instead of going Linux I’ve gone Windows.  To be specific I’ve installed Linux in Windows enabled by the WSL and also a Hyper-V instance using the standard install.  I reported some of this change earlier when I nuked my KDE Neon desktop in favor of a fresh Windows 10 install.

I’ve installed Ubuntu using the WSL and have a desktop instance using Hyper-V. Both of those installs are much easier now than when Microsoft first released the features. Here are some of the things I’ve done and my observations:

  • BOTH Ubuntus:
    • Setting Fish as the default terminal application was easy and the same commands work in both places
  • WSL
    • The home directory is buried. This means files downloaded via youtube-dl are buried deep in the folder structure of Windows and it takes a bit of searching to find them to add them and then bookmark the folder for future reference.
    • I can SSH into my home servers no issue but netdiscover, nmap, and other apps that rely heavily on the network stack just aren’t available. This really has me wondering what Kali is like if the networking tools of that distro don’t have access to what they need.
  • Hyper-V’s
    • The graphics aren’t smooth. Ubuntu’s ability to draw the windows isn’t bad, but it’s not good either. The elegant animations of Ubuntu works a bit clunky, but that’s to be expected of a VM.
    • I can SSH into my home servers but Hyper-V doesn’t have an easy way to bridge the network adapter making netdiscover useless
    • Running a VM on a laptop adds a lot of inefficiencies and reduces battery life–but I don’t know by how much yet.
  • Additional insights
    • Not a cohesive instance. To be totally clear, I understand why this is the way it is, but from a user standpoint not having a cohesive instance between the user’s Linux’s might just push them to have a cohesive instance and install on bear metal

I’m not going say at this point that a casual Ubuntu user like myself can stay in this paradigm. What I can share is that it’s week 1. What’s I’ve noticed so far is that I have an additional cost of maintenance by having two systems I have to update instead of one. I can’t use netdiscover which is rather sad.  It’s an app I’ve come to rely on to help troubleshoot the home network.

There might be more rough edges in this and time will tell if it becomes enough of a deal breaker to get me to partition the drive and just have 2 OSs on the machine (I need Windows for work).

So, my conclusion is still pending. Sometimes you’ve got to live in an environment for a while to figure out how to work around it’s quirks. I’ll give it a few more weeks, but here’s my journal entry from week 1.  What would you have done differently?

Actually, Microsoft

A few months ago I had written how I was able to move all of my apps and workflow over to Linux. It was a proud moment and I loved getting to that point after years of trying.

This last week though, I nuked Linux.

Part of the reason for this was work. While I had adjusted my personal workflow to use only Linux (KDE Neon is awesome), my work workflow was very much based on MS Office and the work issued laptop was not as comfortable as some of my personal machines. So I started doing more work on the home machines and then it dialed up several notches as I started to have to coach people through solving problems on their machines.

So, I nuked Linux.

One reason for doing this is it’s not the same Microsoft as a few years go. You can easily see this in Microsoft’s communication applications. Skype for Business is arguably the worst app I used in 2018. It doesn’t integrate with anything well, doesn’t keep it’s chat history (except inside of MS Outlook), and doesn’t even use a modern codec to be able to do screen sharing.

In contrast there’s MS Teams. It’s modern, remembers your chat history, and integrates with lots of other applications. Teams is where Microsoft is heading, and it seems to be a pretty positive direction. Microsoft now seems to want to play nice with others. That wasn’t always the case.

The other area that’s seen some significant improvement is the ability to run Linux on Windows. The install Ubuntu via Hyper V works pretty dang awesome. So, now I’ve nuked Linux, but I’ve actually installed it twice on this Windows Machine. I’ve got Ubuntu’s command line via Windows Subsystem for Linux (WSL) and I’ve got full Ubuntu desktop using Hyper V.

I’m probably not going to stick with this long term, but I am going to give it a go for a month or so. Microsoft doesn’t just seem to be telling users how to use their computer anymore. They seem to be actually enabling people’s workflows.

This doesn’t mean the transition is perfect. I’m not a fan of the desktop layout though it is functional. The interface in general has artifacts from previous versions of Windows whenever you try to do anything close to what a power user might want to do on the machine. So it’s enabling, but it’s not an elegant design. KDE had both it was enabling and had an elegant design. Let’s see what Windows is like for a while.

Adobe’s Font License– Small Print

It should come as no surprise that I do enjoy good fonts.  For years now I’ve had a subscription to Adobe Creative Cloud, but I also primarily run Linux.  Adobe’s software doesn’t run on Linux.  So, I figured that since I was paying for the Creative Cloud license that I was paying for the ability to use the fonts on my Linux machine.

As it turns out I was kind-of wrong.  I can use the fonts on another machine, but I can’t use them at the same time.  Below is the font EULA with my emphasis in bold.

2.1 General Use. You may install and use one copy of the Software on up to the Permitted Number of your compatible Computers; or

2.2 Server Deployment. You may install one copy of the Software on one Computer file server within your Internal Network for the purpose of downloading and installing the Software on up to the Permitted Number of other Computers within the same Internal Network; or

2.3 Server Use. You may install one copy of the Software on one Computer file server within your Internal Network for the purpose of using the Software through commands, data or instructions (e.g., scripts) from another Computer within the same Internal Network, provided that the total number of users (not the concurrent number of users) that are permitted to use the Software on such Computer file server does not exceed the Permitted Number. No other network use is permitted, including, but not limited to use of the Software, either directly or through commands, data or instructions, from or to a Computer not part of your Internal Network, for Internet or web hosting services or by any user not licensed to use this copy of the Software under a valid licence from Adobe; and

2.4 Portable or Home. The primary user of the Computer on which the Software is installed may install a second copy of the Software for his or her exclusive use on either a portable Computer or a Computer located at his or her home, provided the Software on the portable or home Computer is not used at the same time as the Software on the primary Computer.



100% Linux

I first booted Linux in 2005 when I was in Iraq and since then I’ve been a fan of the operating system’s power and price tag.  I’ve mentioned the OS in just a few of my posts here before, and also a well deserved tribute to one of my favorite distribution’s PM leads.

darktable-logoI have a few quirks about my workflow.  Recently I’ve been able to take my photography workflow to Linux thanks to some of the great work on Darktable, and some of the great how-to videos produced about how to use the software.

One of my other quirks is my favorite game; Civilization IV.  I’ve been a fan of the CIV games since my brothers and I figured out how to get the original CIV game to play on the computers at our high school without getting into trouble.  The game has sentimental value and I generally play with settings where I can get through a game in about 90 minutes while I’ve got a documentary on in the background.

maxresdefaultCIV IV’s age (November 2005) meant that it missed Valve’s effort to get games on Linux through Steam and it’s reliance on some specific Microsoft Technologies meant that it wasn’t just a straight executable file that needed to run.  It requires font libraries .NET compatibility and a slew of other considerations.  Now, mind you, I’ve paid for the licenses for all of that software before as I’ve purchased CIV IV about three times (on disc, from Valve, & from the Mac App Store).  To me it represents the best of what I remember about computer games growing up with just enough graphics to ensure my eyes don’t wander in an 8-bit wonderland.

So, while this post ought to include details about how I’ve moved my workflow from Office to LibreOffice or from Exchange to IMAP it really is about the last few steps.  I needed a photography workflow that wasn’t reliant on Adobe’s Creative Suite and I wanted to bring my favorite game to my favorite desktop.


While I’ve written about Linux I don’t consider this to be the sort of thing that’s happened because of some great technical skill I have.  I don’t write code.  I’m not a programmer.  I’m just someone who decided he could move his workflow over to Linux without compromise, and sure enough, that’s exactly what I’ve been able to do.

It’s an incredible feeling.  Simply incredible to be free from VirtualBox instances of Windows or a situation where I have to dual boot.  Developers love open source because it gives them the freedom to edit the code.  I’m feeling what a bit of that freedom is like knowing that what I’m running isn’t constrained by some of the more restrictive operating systems on the market.

This blog is so obscure at the moment that I’m sure not even .001% of the people I need to thank will ever read it, but I’m going to send it out over the internet anyway.  All these servers and things that make up the internet give us a great opportunity to be grateful.

Tux 100%

Check With The Man

I was recently listening to the Ubuntu Podcast.   The hosts did their usual great job and on the episode in question they were interviewing David Britton of the Ubuntu Server Team.  For years I’ve repurposed old computers to run as servers for various purposes in my home.  Ubuntu allows me to run the same environment to apply solutions in my home as it does at scale in large enterprises.

In each episode the hosts gather feedback from their listeners and the responses are usually filled with nuggets and wonderful suggestions.  In the episode linked above they got a question about tuning a laptop to maximize battery life and quickly mentioned the application (powertop) and a couple of the commands.  What they didn’t mention was the syntax.

This often happens when running a command-line friendly operating system.  It’s not the first time I’ve come across a command and then had no idea what to do with it.  Thankfully, all you have to do is ask the man.

The man, of course, is the man pages or pages from the manual.  In my case all I had to do was type in man powertop and I saw the commands referenced from the podcast with their appropriate syntax.  This gave me the information I needed to follow the podcast’s host’s instructions and get on with better battery life on my laptop.

So, quick advice.  If you don’t know your syntax, check with the man.