6 April 2019

Thoughts on Ubuntu in 2019

I'm a Mac user at home, since 10.3 / Panther. Before that Windows (I worked mostly with NT4, andan early verison of NT5 on Dec Alpha's!). I have experience with Sun SPARC; I once had a 'pizza box' SPARCstation as my home PC, thanks to a company retiring them, and wanting to try it out.

I've used various flavours of Unix in a work environment, but couldn't honestly describe the differences between the main branches. I used to know my way round NetWare reasonably well. I've used BSD on a Dec Alpha, I was proficient with OS/400. I used to test software on Mac OS 8 (I hated pre-OS X Macs).

My first experience with Linux was SuSE 6, 6.0 I think, on an Intel home PC back around 1999. I kind of liked playing round with it, but... I preferred the sparc station once I got it, and to be honest Windows was a  lot easier to run. I think I was using Win95 and NT4 at home at the time, and, well, Doom, Unreal &c.

So SuSE didn't have a long tenancy on my home machine.

I played with various versions over the years, but once I got an iBook and then a PowerBook with, a working version of, OS X then that gave me enough of the Unix style underpinnings, and almost annoyingly it did Just Work, mostly. Those were the days of rampant Win viruses, which using OS X became almost an interesting spectator sport. As a contractor I was on site with a Powerbook when the virus de jour took down the whole Windows infrastructure - we ended up running Windows laptop network shared through my Mac - it was kind fo amusing, up 'till then everyone scoffed at the Mac, on Monday a lot of people had powerbooks! I had a black Intel MacBook the day they were released - yes i paid extra just to get one in black. I loved that machine. I've had a few powerbooks, but to be honest up until the one I have now they haven't always seemed as usable, stable or solid as they should have been.

I've used Raspberry Pi's for various home projects over the years, so have often had Debian variants around. They have never been a significant amount of my home computer usage.

Anyway - that's all to say, I'm not a Linux or Unix guru by any stretch, but I'm not a total noob, and I've got some experience of different OS's.

And here we are - new on my desk, because my laptop is getting a bit creaky. Wanting to use tensorflow-gpu, so Linux is recommended, Ubuntu seems the average home install. And that's what I've been using.

Previously on dual boot Win/Linux machines I've ended up booting to Windows more often than not. Just to get stuff done, rather than reconfiguring config, and rebuilding kernals to try and optimise for my machine.

(Hmm, I haven't built my self a new kernel specific to this machine, maybe I should.)

I've only been using this machine for a month or so, but I've only booted to Windows (after my shaky Ubuntu start), a few times. I think pretty much only when I've worked from home. Ubuntu (18.04 as of today), seems to have not really needed much configuration. I installed, minimal install in case  you are wondering, added some extra bits and pieces and bells and whistles, but not much. I am running off a PCIE M.2 drive, and 'only' have 250GB for the main OS (most of my home drive is on a 1TB SATA SSD, and a 3TB HDD, but some is on the fast M2 drive), so it's got a bit of oof to it.

Do I like it thought? I think it's unfair to say - it's only been a month for a new, and i don't know the ins and outs of it. With that proviso - I'm both impressed and a bit meh.

Impressed.
It works. I didn't have to go and hand code my WiFi configuration, I had some graphics issues, but I think they were mainly my fault. I had to reinstall due to aforementioned issues, but I manged to save most of my home drive - obviously the non-M2 drive files were all safe, as a given. On install I could resize the M2 partition, install to a new blank partition, then mount the old install to /home, and a bit of playful wrangling later it was mostly back to where i was.

I really do like that Ubuntu recognises all (mostly all), my hardware. That shouldn't be enough, but a) my early experience of Linux is that this wasn't a given, and last time I built a Windows PC it didn't recognise my SATA HDD (SATA was new back then, I think I had to copy a patch on to the install medium, or something - it was quite a while ago now). Using Mac's, especially laptops, mostly hardware just works, unless it doesn't, and then it can be a right pain. So - should everything working be something that is a plus point, rather than something we should expect. I think a plus point.

Installing didn't ask me a million questions about partitions, I didn't have to consider thesize of a swap drive and where it was, thought that is playing on my mind a bit - right now I couldn't tell you if this install actually set itself up to have a separate swap drive, and just hid that from me. It plays on my mind, but I find myself struggling to care. Again - maybe this shouldn't be a plus so much as a minus for my previous experiences, Shrug. It's a plus.

This OS works well enough that I don't feel the need to drop back to Windows to do useful stuff, or just to browse time wasting videos on you tube.

I don't have any music loaded on this machine, but if i did I expect the sound would work fine. Systems sounds and video sounds do, so I see no reason why music players wouldn't. Butnow that does interest me, so brief interlude while i go and check the state of music players on Ubuntu. (See below for a slight annoyance on this). Unsurprisingly VLC is the only media player I have, and it plays music files as expected. I just loaded Audacious and that seems to work fine. These monitor speakers are really pants though.

It's somehting i have no doubt i could do on Windows and OS X, but it's presented well in Ubuntu - custom key combinations. It's very very straightforward to set up key combinations to do things. <win> + t opens a terminal for me. <win> + e a file explorer (muscle memory...) and similar. There are straightforward ways to do this in Windows, and I've never felt the need to in OS X, but still, I like this.


Meh
I connect to my NAS. The OS asks for a username / password and whether it should remember them. I enter and tell it to remember. That only lasts one session. I've no idea why. (I assume i could go and find out).

Probably not a Ubuntu issue, but an Intel/Nvidia one - I was running one monitor off the Intel i5 built in video, and one from the 1070. That just stopped working at some point (I believe it's that the two drivers don't play nice). I'd like to be able to switch driver, so if i use the GPU for tensorflow I turn all video off on it. That's probably not a 'normal' thing to do, but whilst i suspect i could do it, and I can think of ways it may be achievable, I wouldn't really know where to start setting it up.

Once i ruled out the intel graphics, I fed both monitors off the 1070. One HDMI one displayport. Ubuntu for quite a while didn't like the display port monitor, which was annoying as that was my better monitor (second monitor doesn't have display port, my 1070 only has one HDMI out). I did fix this (I don't remember how, but I did).

While checking for music players i remembered that the machine seems to drop my sound output preference. I don't have speakers connected but my main monitor has speakers (pretty rubbish ones, but good enough). On boot it seems to switch output to HDMI, whereas my monitor with speakers is the displayport monitor. I would guess the HDMI monitor registers first or something and that may be fixable, but... it's just a slight annoyance.

This is the big one though, and it is down to me as much as Ubuntu (and maybe should be in the Impressed column). The OS doesn't seem to want me to customise it. On previous Linux installs there's always been control panels with a million options to tweak. Settings in this version of Ubuntu is a very anaemic application. I did add the Tweaks app, but still. This is down to me, because the thing I like is that it's mostly working without playing around, so why do I want to have to tweak it? I no doubt could go and play with the configuraiton files, and I want to. But the OS doesn't seem to want me to do that.

Hardware issues. Everything mostly works. Not everything does though. One issue is definitely not down to Ubuntu but Asus, and one may be Asus, Intel or Ubuntu.

The Asus issue - my motherboard has blinky lights, and a blinky light controller (Aura). The Windows app isn't particularly good. I like playing with RGD LEDs from an arduino (mostly so-called neopixels), and am really quite comfortable building my own effects, triggers and such. Aura just has some built in effects. it doesn't want to let me write my own effects as far as I can see. Aura does seem to sun from the motherboard because it remembers the settings in Ubuntu. Which brings me to - from Linux there appears to be no way to change the LED settings. That is entirely down to Asus, and I suspect if i put in some time and effort I could contribute to one of the projects trying to reverse engineer and API. I suspect in future I may do this. But it is kind of annoying that on a modern motherboard that is built with tweaking in mind, on what I would call a mainstream OS, there is no support for changing settings.

The second issue which again may be down to Asus, Intel (or even Be Quiet - the case manufacturer), when I plug an arduino in to a USB port it doesn't seem to get a usable virtual serial port. I am using the front case USB hence it could be something odd about the front panel. It could be soemthing odd about an Intel chipset (I've no idea if this even makes sense), it could be down to an Asus chip set (ditto), or it could be down to Ubuntu. Something I will look into in future. Given the motherboard doesn't want me to play with the built in RGB LEDs I was going to hook up an arduino with some LEDs to give a visual CPU temp indicator. Idont' want the main RGBs just to show CPU temps, as mostly I like the fading i have set, and for all I am playing with ML on this machine, I don't often stress the CPU. It is a quiet case, so I suspect runs hotter than average, so I would like one set of lights to give me fair warning. My comparison is that on a Wndows machine USB serial ports need a bit of work, but it's a fairly painless process. On my Mac's I've always, or mostly, just plugged the device in and got a port - this isn't the case on some boards as they use a weird driver, but still, I just installed that driver and was good. Thinking about it that's possibly what I need to do here too. This is actually the thing that surprised me most, to be honest. (Reading up, I have various things to try, so all is not lost).

My keyboard has an app on Windows, but the key combo situation on Ubuntu makes that pretty much irrelevant. The keyboard suffers the same complaint as I have with Aura (I can't build my own effects), but - it's a keyboard! It works fine. Ubuntu actually seems to play nicer with Windows as far as keyboards are concerned; I previously used an Apple keyboard on Windows, and it was a bit of a pain - now i use a keyboard with Win keys, and it's all quite nice in Ubuntu. I know this is actually down to most keyboards being made for Windows users, and isn't a Linux thing as much as a Windows / OS X thing, but still.

I remember windows managers having a plethora of options to play with, and being unreasonably tweakable. That doesn't seem to be the case anymore. I do realise i can apparently quite easily change my window manager, and probably get all that tweakiness back. I also know that I used to tweak things beyond sensible limits and have to work out how to reset everything :) So meh, but no great loss.

Grub. I remember grub being very straightforward, and really quite reliable. On this machine every few boots rather than booting to the grub choice of OS, it boots to a grub prompt which I need to exit from. Minor, but annoying. When I wanted to tweak my grub settings there was a whole hierarchy of files to look at, and none of them were particularly obvious as to what they did. An install added some rubbish to grub, and it was absolutely not clear to me how to get rid of it. I know this isn't a Linux thing per se, and is absolutely down to my lack of knowledge of grub. It used to be a lot more intuitive though - and probably less capable. I just need to get up to speed with grub.

Most of the above are things which I could still do (I believe), they just aren't as obvious, or needed, as they used to be, as far as I remember. So calling them meh, when the thing I apprecuiate most is you don't need to do any of this stuff is perverse at best.

I guess this really is an home user OS. Bravo - year of the Linux desktop appears to be utterly plausible - from a non-nerdy, trying not to be a bit of a twat, I think this OS actually is better than Windows. Win10 is subjectively 'nicer' and probably easier to tweak safely, but I actually would recommend Ubuntu over it.

Other thoughts
I think some of the things that make Linux a lot easier now than when I played with it before are not necessarily related to my install on Linux.

Playing music from my computer is mostly irrelevant now as I have a couple of Sonos speakers, and control these from my phone, using Apple Music as a source. I don't actually 'need' music on my computer. Thus it doesn't matter if there are alsa configuration issues or not (there don't appear to be, I don't even know if also is still a thing). I would like a nice Sonos app for Linux, but then the app for Windows is horrible, and I'm not sure I've actually used the Mac app for a long time. I just use my phone to control the speakers. The last main home PC i used had a pretty good Soundblaster surround sound card and speakers to match. Maybe if i was gaming that would still matter but... I just don't feel the need for it. besides, my motherboard being a 'gamer' mb apparently has pretty good audio built in (8 channel, dual OP amps, 32bit playback, 'premium' capacitors, shiedling, blah blah blah - though not 8 channel and 32 bit at the same time).


If i want to play around composing music I'd still just fire up Logic or GarageBand on my Mac (I used to play around with loop editors, but GarageBand scratches that itch, and Logic I just sit playing with effects).

If i want to watch video I do so on my smart TV, or on the TV video an Apple TV or Amazon box.

I don't really play computer games anymore, but I do have a PS4 for the few games that do interest me (Horizon Zero Dawn and Assassins Creed Origins, with a bit of Skyrim or Witcher). maybe that's the legacy of using a Mac, and if I used Windows I'd get in to PC games (Rust looks fun, and I seem to have Portal in a steam library). I may get a retro emulator going though - last time I did that was using a dedicated RPi, so I'm fairly confident it would work just as well on Ubuntu.

I got used to Gimp for image manipulation, and I *assume* that will work just as well on Ubuntu.

I got used to using Google docs for the occasions i use spreadsheets at home. Mostly something i would use excel to model or calculate I just use python for though.

Chrome is my browser of choice, and Chrome is available on Linux. I didn't think it was, though maybe that is just an RPi thing.

I have a small NAS so file sharing isn't really an issue. I also use Dropbox, so again, no real need for file sharing. (It is annoying Windows and Linux on the same machine won't happily and safely share a Dropbox directory, but that isn't a massive issue for me).

Disk space is stupid cheap, so having dupe files (see dropbox), isn't a huge deal. With around 2TB just for random docs and two operating systems, and 3TB for general file storage, and room to add a lot more disks if i really want to, space isn't likely to be an issue any time soon. When it is I'm more likely to drop bigger disks in my NAS, and use the two drives form there in this PC as temporary possibly non-safe local storage. As above this makes the whole install situation a lot more straightforward.

File drivers for Linux appear to be a lot better than they used to be. Annoyingly accessing Mac volumes from Linux is the only problem I've had - NTFS and exFAT pretty much just work.

Flash doesn't seem to be used anywhere. Or much. And I'm not sure Chrome actually supports it anyway - I don't seem to have had to disable it for years :)

I have Hue lights, but wrote python scripts to control them, which should work just as well here as on my Mac. Though I don't really use the scripts any more, I just use a Hue switch, timers and my phone.

I think devices that work well with my mac would work well here. I have a GPS for my bike, and it connects as a mass media device. Should work here. I suspect updating maps won't work, but it is rare I do that, and I do have Windows / my Mac if it is a problem. I have a small GPS tracker I wanted to use to track rides, but that didn't really like Windows or Mac - I wouldn't be that surprised if it worked on Linux to be honest (I think the software I tried on my Mac was actually based off an open source Linux project).

The Apple devices I have (phone and watch), never connect to a computer anyway, so I basically never use iTunes. Which is a good thing, whatever operating system you are using.

I'm pretty sure when I need to compile app's from source the CPU / RAM i have will make that entirely painless. Compiling tensorflow was reasonably fast and painless. Painless as far as the actual compile was concerned, anyway. I suspect a kernel compile would probably be pretty quick, when I feel the urge to royally break my machine.

The world seems to have got less dependent on home PC operating systems, and devices have got more independent and smarter for the most part. It seems everything has a web interface nowadays.


So - I like Ubuntu, but it's a bit plain. Plain isn't bad though, when you actually just want to do stuff other than playign with an operating system and it's tools.

No comments:

Post a Comment

And now for a little Cthulhu

I decided to have a little play with word clouds... I found a nice wordcloud library ( https://github.com/amueller/word_cloud ), and a com...