Sunday, June 23, 2024

Leaving Microsoft: A minor setback

 I've encountered my first issue.

I was updating my Arch test system, and it failed with an error that one of my installed packages was incompatible with the new packages.

The offending package was electron25.

You will note electron is not in my list of applications. It isn't an application I use, specifically. Rather it is a framework for developing applications which will run on multiple operating systems. I was fortunate enough to have been vaguely aware that Obsidian (which is one of my applications) is built on electron. A web search might give you that answer (it did me, but search isn't entirely trustworthy nowadays - dark forest and all...).

I did do some searching in Arch for an answer. I found a few similar issues, but not the same, and no applicable solutions.

Since this is a test system, I decided to try uninstalling electron. I would then run the updates, and then see if I could figure out how to get electron back on.

The uninstall and update went smoothly, no issues. Then for giggles, I decided to try launching Obsidian. It worked.


Puzzling.


I used a command to query my system for electron and discovered that, unbeknownst to me, there was a new version of electron which was installed.

My initial thought was why didn't the older version of electron uninstall when the newer version was installed. Of course the answer is, there are some frameworks which you can have multiple versions installed, to satisfy compatibility issues with different applications. You see this same behavior on windows, with .Net, and a variety of Visual C++ libraries (And I have had to deal with issues on the Microsoft side, though usually not with typical consumer applications).

This did give me pause to consider my decision to go with Arch, One of my criteria is that I don't want to have to spend time fiddling with the guts of the Operating system. I expect it to largely "Just work". 

Interestingly, as I was pondering going back to Debian, there was news of excitement there, involving KeepassXC - one of the applications I depend on.

One of the quirks of the Linux ecosystem is, you don't typically get your applications directly from the original developers.

You can get the source code. And then build it yourself. But that can be a major headache. You have to work out what dependencies are required, tweak compiler options and settings, then compile the source code into the application. It can be a time-consuming and fiddly process.

And then you have to watch for new releases of the source code and repeat the process to keep your applications up-to-date. Not a user-friendly process.

Fortunately, most Linux distributions have a package management system. This system works similar to an app store. You select the application you want to install, and the package management system handles deploying the the program and any dependencies for you. It typically has a mechanism to check for an apply updates as well.

But where does this compiled program for your distribution come from? And how does it know about the dependencies?

Somebody else does all of that for you. These individuals, called package maintainers do the heavy lifting, so you don't have to.


There are a few catches.

1. They are usually volunteers, which means your important package may not be their number one priority.

2. They make decisions about how the application gets packaged, which you may not agree with. And you might not get much of a say in the matter.


That is essentially what happened to KeepassXC for Debian. The person maintaining the package for Debian decided several features were a security issue, and arbitrarily removed them. The ramification was many people suddenly lost access to features they relied on after updating to the latest version.

Now, this wasn't really as dreadful as the news articles made it out to be. The maintainer released a separate version under the name "KeePassXC-full" with all the features available. So, all you really had to do was select a different package and all is well.


But it does point out one challenge when working with Linux.


You are often entirely dependent on individuals, over whom you hold zero influence. What if they decide to configure the program in a way that doesn't meet your needs? What if they do't feel like building necessary documentation, leaving you to "figure it out"? What if they decide to slip malware in? (yes, the benefit of open source is anyone can look at the code, and report if this happens, but can you really be certain that capable people are looking at the code for the programs you use?). What they have a falling out with the developers of the program, or the Linux Distribution you use, and decide to abandon it?

The reality is many of those same issues exist in the Windows/Apple worlds as well. Companies abandon applications, or make poor financial decisions, or poor technical decisions, which can impact your experience as a user. That is in fact one of the primary reasons I started this endeavor - Microsoft was caught reading customers' email - not just reading, but also breaking into password protected zip files, ostensibly "for your safety". Apple of course claims they "would never". But then, they just implemented a backdoor into their iPhone OS giving them the ability to do so. If they "would never", why then did they do that?

And that is, I suppose the bright side of the Linux "mess".

Yes, you have to deal with this mass of independent, often arrogant, free thinkers, often driven by their own whims, which leads to a cacophonous array of distributions, disjointed systems, inconvenience and general chaos. 

But, that inconvenience and chaos can disrupt conspiracies of wealth and power, and it does produce some brilliant innovations as well.

Not the ideal, perhaps, but, until we humans can ascend to our better natures, it is better than the alternative.

Pragmatically pressing on....

Wednesday, June 5, 2024

Leaving Microsoft: Applications

 


This is the continuation of my posts journaling my effort to disconnect from Microsoft. The initial posts focused on the operating system itself, but the operating system is really just the skeleton. It is the framing in the house, so to speak. If it is doing its job properly, you should largely forget it is there. It is the applications that actually matter.

I have been taking inventory of the applications I currently rely on or am tinkering with. I have created a quick list below (Alphabetical). Below that, list each application is presented with some additional detail, including:

  • What the application is used for
  • Is there a version which runs on Linux
  • What reasonable alternative applications have I found
  • Any notes regarding the status of testing, findings, etc...


This would probably be better residing in a wiki or something similar, as it will go through a few changes as I progress, but... here it is for what it is worth. Let me know  if you think I am missing something.


7-Zip

Audacity

Calibre

Draw.IO

Edge

GIMP

Git

Gnu Cash

GnuPG

Handbrake

KDEnlive

KeePassXC

Kleopatra

Minecraft

MP3Diags

MP3Tag

MS Office (Word, Excel, Powerpoint)

MS OneDrive

MS OneNote

MS Outlook

Notepad++

OBS Studio

Outlook.com

Phone Link

Putty

Steam

Visual Studio

Vmware Workstation

WinSCP

Yubico - Yubikey Key Manager

Zoom





7-Zip

What? File/Folder compression/decompression

Linux Version? Yes

Alternative? NA

Notes:


Audacity

What? Audio Editing 

Linux Version? Yes

Alternative? NA

Notes:


Calibre

What?  eBook Management

Linux Version? Yes

Alternative? NA

Notes: I have just started playing with this, to see if It can be useful in my authoring endeavors.



Edge

What?  Web Browser

Linux Version? NA (Microsoft)

Alternative? Chrome (Google), Firefox, Falkon, Brave

Notes: Google is on my list of companies to detangle from in the future. I stopped using Firefox after they forced out one of the directors for his personal donation to a political cause (which, shouldn't have even been public knowledge). I am reluctant to go back, as I have no indication their culture has changed. Playing  with Falkon at present, as it was bundled with Arch/KDE. It is built on Chrome source, but with Google stripped out. So far so good. Brave is popular with priacy experts, but I haven't tried it out yet.


GIMP

What?  Graphics editing

Linux Version? Yes

Alternative? NA

Notes:


Git

What?  Version Control (software, documents, etc...)

Linux Version? Yes

Alternative? NA

Notes:


Gnu Cash

What?  Person(/Business) Finance (Like Quicken or Quickbooks)

Linux Version? Yes

Alternative?  NA

Notes:


GnuPG

What?  Cryptography Platform (encryption and digital signatures)

Linux Version? Yes

Alternative? NA

Notes: I've only just started playing with this., for privacy and authenticity puproses.


Handbrake

What?  Video Conversion tool

Linux Version? Yes

Alternative? NA

Notes: I used this to make backups of my DVD's (No, I don't pirate them. I am strictly in compliance with copyright fair-use). I have also used it a few times to convert old video files to more modern (supported) formats.


KDEnlive

What?  Video Editing

Linux Version? Yes

Alternative? NA

Notes: Another one I have just recentlty started tinkering with, so I don't know much about it yet.


KeePassXC

What?  Password Management

Linux Version? Yes

Alternative? BitWarden

Notes: I am happy with KeePassCX, but have been keeping an eye on BitWarden as an alternative option.


Kleopatra

What?  Digital Certificate Management (Front end for GnuPG)

Linux Version? Yes

Alternative? NA

Notes:


Minecraft

What?  Entertainment

Linux Version? Yes (But Microsoft Owned)

Alternative? 

Notes: I like this game as a diversion, and have even been recording my game sessions, which I have just started posting to YouTube as an educational experience. I am aware of a few alternatives people are building, but nothing which looks like a viable alternative for me at present. I am willing to give it up. 


MP3Diags

What?  MP3 Repair tool (Fixes audio and metadata issues in  mp3 audio files.)

Linux Version? ???

Alternative? 

Notes: There used to be a Linux version, but it appears it is no longer supported except on windows. I still need to find an alternative. I can move forward without it, however, as need is very low, and I could probably accomplish the same things in Audacity, albeit with a learning curve.


MP3Tag

What?  MP3 metadata editor 

Linux Version? No

Alternative? Tagger, EasyTag, Kid3, Amarok

Notes: Haven't evaluated these yet. I use this to fix MP3 metadata (i.e. add Genre, which is often missing from purchased MP3 files.) Need is low.


MS Office (Word, Excel, Powerpoint)

What?  Staple Office applications

Linux Version? NA (Microsoft)

Alternative? Libre Office

Notes: I have already converted to Libre office. Interestingly, It did a better job of converting my old office files than MS Office could.


MS OneDrive

What?  Cloud Storage, file syncing, DR

Linux Version? NA (Microsoft)

Alternative? DropBox, Sync, ProtonDrive, SynchThing, NextCloud

Notes: There are tons of options for this out there. Trick is finding the right mix of convenience and privacy. Currently playing with syncthing, which is self-hosted. Probably more work than most want to do. ProtonDrive seems to be very strong on privacy, with end-to-end encryption. I still need to work on this one.


MS OneNote

What?  "Second Brain" Note-taking and management platform

Linux Version? NA (Microsoft)

Alternative? Obsidian, Notion, Logseq

Notes: I have been using Obsidian for the past year and a half, after OneNote corrupted a bunch of my data. OneNote appears to store files in a proprietary, binary format, which puts the data at risk. Obsidian, on the other hand, uses plain text files with Markdown. It is incredibly powerful - much more so then OneNote as a personal knowledge management tool. You can build in capabilities to allow project and task management, calendaring, habit tracking, data library management, and so much more. They also provide built-in syncing of data, for a subscription. They are closed source, so it is difficult to gauge how they are with respect to privacy. They seem to be good. Logseq looks interesting as well, so I may explore it, but at present, Obsidian is the clear winner for me.


MS Outlook

What?  Email client

Linux Version? NA (Microsoft)

Alternative? Thunderbird

Notes: I don't entirely love Thunderbird. It is a bit slow and clunky, and it is owned by Mozilla (Firefox). I've not yet found any other viable alternative, however.


MS Visio

What?  Diagraming software (flowcharts, network diagrams, etc...)

Linux Version? NA (Micorosoft product)

Alternative? Draw.io

Notes: Still new to this one. Need to play with it more to come to a conclusion, but thus far it seems okay.


Notepad++

What?  Text file editor.

Linux Version? Yes

Alternative? NA

Notes:


OBS Studio

What?  Video recording.

Linux Version? Yes

Alternative? NA

Notes:


Outlook.com

What?  email hosting.

Linux Version? NA (Microsoft)

Alternative? Protonmail

Notes: My primary email address is an outlook.com email. This will be a pain in the backside to detangle. I may opt to break it out: one for family/friends, hosted at proton (better privacy, though less convenient), and one for bills, etc. hosted... somewhere else. Still not sure about this one.


Phone Link

What?  Enables interaction between my phone and my computer, such as being able to see and respond to text messages from my computer. My primary use is to copy one time passcodes sent by SMS, to the requesting website on my PC.

Linux Version? NA (Microsoft)

Alternative? KDE Connect, GSConnect

Notes: I have just started playing with KDE Connect on my test system (Broke my connection to my computer in the process. Presumably I can connect to only one system at a time.). So far so good. Not quite a polished or convenient, but sufficient for my needs.


Putty

What?  Terminal software. Used for connecting to (via SSH, or Telnet) the management interface of devices (network switches, wireless access points, Linux servers, etc...)

Linux Version? Yes

Alternative? NA

Notes:


Steam

What?  Entertainment (Video Games)

Linux Version? Yes

Alternative? 

Notes: I only have a couple of games on Steam (Half Life 2, Skyrim). I haven't played them in ages. There is a Steam client for Linux, though I don't know if that means my games will "just run" (i.e. are they emulating windows, so you can play windows games?), Or if I would be given access to Linux versions of the games, assuming they exist. I may or may not take the time to investigate this. I can live without it, at any rate.


Visual Studio

What?  Software development environment.

Linux Version? NA (Microsoft)

Alternative? Eclipse, VSCodium (Visual Studio Source code, but with Microsoft removed)

Notes: I don't do much coding, so this hasn't been a priority. I have used eclipse before, and it works well enough. VSCodium should work fine too.


VMware Workstation

What?  Virtualization Platform

Linux Version? Yes (But Broadcom?)

Alternative? VirtualBox (Oracle? Not any better), (QEmu)

Notes: I have mostly used VMWare workstation to demo Linux systems. I may be able to get by using Docker once I am moved to Linux as the underlying OS. For now, I will probably continue to use VMWare, but Broadcom is making me nervous.


WinSCP

What?  File transfer utility

Linux Version? Yes 

Alternative? NA

Notes:


Yubico - Yubikey Key Manager

What?  Hardware Security (Physical key with digital certificates, to enhance secure access)

Linux Version? Yes

Alternative? 

Notes: I've just started using this for privacy/security (might do a post about it- how i use it, best practices, what safeguards I use, etc...). Basically, it is a physical key, which you can bind to password managers, such as KeePassXC, and to Financial and other critical websites. In addition to entering your username and password. the site will require the key to be present (connected to your pc via a USB port, or you can 'tap it' to your phone, just like you do with newer credit cards) in order to allow you to log on.


Zoom

What?  Video conferencing.

Linux Version? Yes

Alternative? 

Notes: I still need to test this. I really only use it to chat with family at present, so usage it fairly rare, (more so than it should be).