Now I need Linux for work (software dev) again, so I gave dual-boot a try. I installed OpenSuse, Ubuntu, and Debian a total of 7 times since Christmas, each time ending up with something unbootable within days. And I spent a couple thousand dollars of my time getting them to work, fixing the horrible fonts on OpenSuse, etc. Eventually I gave up and bought VMWare where Ubuntu now sits happily isolated from real hardware, a configuration that it's somehow more stable in. And at least I have automatic snapshots on every reboot, so when something goes wrong I just roll back.
Honestly, desktop Linux is the most expensive OS out there if you count the value of your time. I really like Windows, not because it's a pleasure to use (Windows 8 with that metro crap was terrible!) but because it just works. If I can't get desktop Linux to work nicely as software engineer, what chance does your average person have? Unless some company does to Linux what Apple did to BSD (SteamOS?), I don't see any hope for it ever being anything but a niche desktop OS.
Counterpoint: I also value my freedom, privacy, mental health, and the longevity of my hardware.
Freedom: I can install it whenever I want on whatever I want. I groan whenever I have to deal with "activation" headaches. It also works just the same on ARM - and anything else! All the programs I use are open source so they come right along too.
Privacy: Even setting aside the Windows 10 debacle, Windows is incredibly noisy on the wire. Linux doesn't make a peep unless I ask it to.
Mental health: System updates happen when I say. It doesn't strong-arm me into restarting when I'm busy doing something else, or hold my system hostage while it does god-knows-what on boot. As for application updates, I have a package manager, so I'm not bugged by a dozen different things like flash updater, java updater, etc. In fact, stuff doesn't spontaneously "happen" in general. If a system service starts chewing up resources or otherwise behaving badly (a rare occurrence) I can a) notice, because it's not lost in the noise of normal system chatter and b) actually find out what it is instead of it being hidden behind "svchost.exe". The primary interface (command line) is comparatively stable - I don't have to keep relearning where things are (it's not perfect in this respect, but it's better than Windows).
Longevity of hardware: I'm writing this on my 2007 EeePC 901. It has 1 gig of ram and runs Debian flawlessly. I never need to restart it and my load average is somewhere around 0.2. Can any Windows do that?
Look, I don't mean to come across as belligerent. You're entitled to choose whatever system makes you comfortable and allows you get work done. But I find Windows wastes far more of my time than Linux.
Since you asked, for what it's worth, I invariably run Debian-based distros. I haven't touched Ubuntu since they decided to get weird with the interface. This laptop is a ThinkPad X61T running Linux Mint + Cinnamon, which is only "okay" - little laggy at times but it works fine. Surprisingly, the fastest-feeling, stablest, easiest-to-use machine I have is... the ancient EeePC. Standard Debian + MATE desktop. The thing about Debian is, if you can put up with somewhat out of date software, is it just does. Not. Break.
I don't really understand where your problems with multiple monitors come from. I just plug 'em in and they work. It's been a while since I had a desktop with an NVidia chip - all my laptops have Intel graphics - but NVidia's self-extracting installers have always worked for me (although they're built against the kernel so you might have to re-run them every upgrade).
I've had the repository problem you describe, long ago - the UK repos were being weird so I switched to France, which worked fine. Nowadays though all you have to do is use http://httpredir.debian.org/, which will always serve you the file from the fastest place it's available from. Never had an issue with it.
I guess I won't deny that it can sometimes be a hassle getting things working just right on a fresh Linux system. But at least you only have to do it once.
EDIT And I don't get how a Linux distro can take more work than Windows to get into a useful state. With Linux I just apt-get the software I want and start work. With Windows installing even a minimal python/R/unix tools/compiler/ssh client/office package/tex distribution/browser/video viewer set of software etc takes ages, lots of baby-sitting and frankly nerves as one navigates around the malware.
I must have some pretty reduced needs. I just use one xrandr command to tell all my monitors what position to be in and it works - and I think my wife uses the GUI program in Ubuntu's Unity desktop without any pain.
> Ubuntu actually had a broken apt-get for me on some recent installs, it turned out to be an issue with using the us subdomain repos
Did you submit a bug report about this? Seems like a bad bug for a distro like Ubuntu.
> Spotify
Spotify is not supported for OpenSuse (it's beta at best on Ubuntu -- but runs very nicely). Trying to run propriety software on unsupported platforms seems like a very bad idea. And of course installing a bunch of random things in random places will spanner an OS. Btw if you want to run Spotify on unsupported platforms I think that there is an addon for Clementine that works nicely and the addon gets installed in your home dir so won't break things (haven't used it for years because the Spotify client works fine for me so things may have changed).
EDIT
I was wrong Ubuntu doesn't install Nvidia drivers for you. You need to install them after install and the process looks annoying.
I think these words are actually on the cover of the 2004 edition of the Microsoft Anti-Linux Talking Points Guide.
It's not that it isn't credible that you had a bad experience, it's that people have bad experiences with Windows too, and often.
And the Windows problems are harder because the solutions are typically some kind of hideous workaround to the fact that the real problem can't be fixed, instead of the much-maligned Linux solutions that involve typing things into a terminal but, if you type the things into the terminal, it actually fixes the problem.
So what? The words that you're saying are on the tips of every Microsoft-hating Linux fanboy's tongue.
> ...the Windows problems are harder because...
Oh please. The Linux problems are harder because most of the time the solution doesn't exist at all ~ (e.g. Does a driver even exist for a particular device? Does it actually work though? Can I get a particular piece of industry-standard software? Probably not (but oh - here's an actually hideous emulation (WINE) of a much better GUI system (Windows) that you can TRY and run it on... ).
> ...if you type the things into the terminal, it actually fixes the problem.
Good one - please tell me what to type to be able to run Linux on a touch screen tablet, so I can run Linux in the same places I can run Windows. Also, what do I type to get a decent desktop GUI experience?
I even have the opposite of your unbootability experience - towards the end of 2014 I rendered my Windows machine unbootable, without hope of recovery. I did manage to boot Linux from a USB drive and rescue my files. Late last year I did a similarly stupid thing with Linux - but I was able to reinstall the kernel without needing to reinstall everything, as Windows had required.
Although you're right about the average-person thing. I shudder to think about walking my mom through a kernel reinstall.
I had the opposite experience. I do tech support for my extended family and I grew tired of cleaning up viruses and chasing up drivers from questionable sites.
3 years ago, I started pushing everyone to Linux (Mint). I must say, I have saved myself a lot of time (yes, I do value my time)
Since virtually no one buys a laptop designed for linux, but rather hopes that linux has adapted (with all the driver "quirks" necessary) for that hardware, it's really just that linux gives you the tools and the freedom to figure things out and set them up how you want. It can't do it for you. Sometimes it's just an impractical amount of work. But depending on what you do, it's often worth it.
On Ubuntu it updated the kernel, which made it unbootable. I could still boot the old kernel, but after taking out a ticket and being asked to upgrade my BIOS, that became unbootable as well.
On Debian it was just too much work to get to a point where it supported the real resolution of my displays and my multi-monitor setup. I eventually just threw in the towel and went and installed Ubuntu in a VM, which at least got me up and running quickly.
I'm leaving out a variety of colorful failure stories, but the bottom line is very little worked out of the box, it was insanely time consuming and difficult to get things into a decent state, and then it didn't stay in that state for long.
I was trying to build a business and was losing too much time. Went back to Windows, installed a free version of mailenable via point and click, then configured it through an intuitive GUI within minutes.
I'm sure I lost some tech cred on that transaction and it offended my sensibilities around MS at the time. But, man it just worked and that was priority one. I was already the CEO, developer, and customer support rep. There was just no value in adding Linux SA to the list.
Have never regretted it nor looked back.
EDIT: Interestingly, downvotes don't make any of my experience less true.
Can't agree with this more. All the "control" and "freedom" you have over PC fades quickly in the shadow of man hours needed to make things work on linux.
Kernel versions are particularly picky. With Debian, I have historically regularly had to jump around between stable, testing, and unstable because one thing or another wouldn't work or the machine wouldn't even boot, because of the version of the kernel used.
The amount of hardware regressions I've run into honestly stagger me. Video is another one that's notoriously bad. I've had to abandon Linux installs on multiple distros because after some update or another, suddenly some or all of video functionality just ceased to work. Debian broke my OpenGL. Fedora developed a system freeze when upgrading to 23. Ubuntu routinely fails to recognize common hardware or even existing hardware that ran previous versions, defaulting back to ugly VGA resolutions and software-only rendering.
I frankly would take any pre-installed Linux laptop's claims of compatibility with a generous grain of salt, and basically expect that it too would eventually fail on some future version.
With Debian at least the curation of the repositories is one of the biggest attractions for me. Everything in there is tested at length and is known to work well together. I've never had problems staying within the repos.
Friends on the other hand always want to install the latest version of whatever package and install tens of external PPAs to achieve that, without consideration for what that means for the stability of their system.
They still carry their windows experiences and think that to install software you have to go find the software authors website and read their instructions - which much of the time apply to other distros and not the one you are using. I have to keep teaching people the Linux way to install software, use your local repos.
I.e. exactly what you are saying.
For comparison. Try installing Windows on a Chromebook. It'll suck. Install Linux on a made for windows laptop and it'll sort of work if your lucky and suck if you're not.
If you want to use Linux just buy laptops that are certified -- it's easy and there are several options these days (I'm not going to name any but google for them).
I have never been a Windows users, but there are some reasons why I use another 'restrictive' OS after using Linux and BSD for 13 years (including on laptops):
- Microsoft Office. LibreOffice is simply not compatible enough. Though, people are moving more and more to Google Docs, so this issue might disappear in the future.
- No GUI isolation in Linux. It scares the hell out of me that any application can read any other applications keystrokes, mouse events and viewports. When you have some vulnerability in some client (browser, mail), it could listen in on passwords that you type in a terminal as well. AFAIR Wayland will solve this. But the ecosystem did not move there yet.
- The lack of consistent keyboard shortcuts across applications.
- Supposedly stable upgrades that break stuff (especially in Ubuntu and to some extend RHEL, never had this problem in my many years with Slackware).
- The lack of cutting-edge hardware with good driver support. I love my 12" MacBook and wouldn't want to go back to anything heavier and worse keyboard/trackpad.
For other users, I can imagine that these are also problems:
- Installing applications outside the distribution's repositories is still unnecessarily hard.
- There is a lot of inertia - people do not want to invest the time to learn something new.
- Business my still have many older win32 applications that do not run on other systems.
---
Anyway, I don't think the traditional Linux desktop or Mac OS X are serious threats to Windows. It's Chrome, Chrome OS, Android, and iOS.
Edit: I don't want to sound too negative about desktop Linux. I just wanted to give some possible reasons why not everybody may be happy to switch.
This sort of issue is why Android (also Linux based but doesn't use X) runs apps as separate users.
X11 forwarding should be enabled with caution. Users with the ability to bypass file permissions on the remote host (for the user's X authorization database) can access the local X11 display through the forwarded connection. An attacker may then be able to perform activities such as keystroke monitoring.
but once you own a user in most any environment in practice getting keystrokes (or anything else associated with that user) isn't that hard. You really have to go further and explicitly sandbox a potentially malicious program.
Definitely. But I think the trust model has also changed over the years. We have gone from trusting a handful of well-vetted programs (10-15 years ago I primarily used a browser, Pine, CenterICQ and a handful of traditional UNIX utilities) to more and more programs that are all newer and typically connect to the net, embed browsers, etc. Consequently, we should trust our applications less.
As you say, you really have to sandbox each program. Apple has pushed this quite hard: applications have UI isolation and App Store applications are sandboxed. In the meanwhile, much of the Linux community has been outright hostile to this idea (except the SELinux, AppArmor, and systemd folks) because it builds walled gardens and applications are provided by trusted distributors anyway.
The reality is that people want to install applications outside what is provided in the distro repos. And perhaps, we don't even want to trust every possible application packaged in a distribution.
We should really go to a small and trusted core operating systems where everything else is sandboxed by default.
(Yes I know that you can switch Chrome OS to developer mode and install Crouton.)
An example of a *nix with good backwards compat is FreeBSD. The FreeBSD cluster has binaries from FreeBSD 2 (1994) that still run. Try that with Linux -- I guarantee you the kernel and glibc broke compatibility. Hell, there are Linux games from early ~2000s that won't run anymore.
Also the Linux games from early 2000s do run - you need the libraries they were built against.
The default on Linux is source code availability. If the ABI changes but the fix is to recompile or change a couple of lines then it's a much smaller issue than it would be on Windows when you can code. And even if you can't, since the default is also redistributability, someone who can may have done it already and the fix will be in the package manager before you even knew it was a problem. Or you can submit a bug which, when the fix is that simple, some random hacker will fix it for you because it looks good on a cv or github history.
This compared with Windows where you have e.g. some driver with sources unknown that needs to be updated to support AMD64, which already supported x86 and was 64-bit clean for some RISC architecture, but now you can't do it at all. Or even more frustratingly, you have the driver source and the fix is very simple but you can't actually use or redistribute it because you're not up for the five grand and six months it takes to get a certificate for code signing.
Or even more frustratingly, you have the driver source and the fix is very simple but you can't actually use or redistribute it because you're not up for the five grand and six months it takes to get a certificate for code signing.
There are easy solutions to getting unsigned drivers working. I do notice that the Windows and Linux community attitudes toward this are different though --- the latter seems to be "no source, can't do anything" while the former is more like "no source, we'll still fix it". We're not all as helpless and controlled by Microsoft as you may think. ;-)
(I'm someone who recently patched a driver for hardware that I had absolutely no familiarity with before. It was literally a 2-byte change after about 3 hours, most of which was spent learning about the device.)
You live in quite the dream world.
I use a tiling window manager and again I would never want to go back.
My job does not require me to modify other people's Office documents and for reading them LibreOffice is acceptable. My own documents I usually write in AsciiDoc and share them as a PDF. For something that I really care about I will break out TexStudio and the result will blow Word out of the water.
Most of my time is spent in either Firefox, vim, or a terminal for which Linux is also ideal.
Gimp + Inkscape cover all of my occasional photo / diagram needs.
For video there really is nothing better than mpv (mplayer successor) and ffmpeg.
I do have a Windows 7 VM that I use for Outlook and Lync at the office and it works fine, but it's just another Linux app. ;-)
Or maybe the bug is in Chrome and has nothing to do with tabs and Awesome...
I think I see what you mean - is it the crazy flickering when you drag the newly created window around? I was able to get rid of that if I set the parent Chromium window status to "floating" (Mod+Ctrl+Space in Debian default config).
Otherwise, I too have found Linux/OS X to be sufficient. However, for many of my friends, other reasons tie them to Windows, such as music DAWs.
Few days later I forgot to wake up the laptop from sleep before disconnecting the external monitor.
All hell literally broke loose...
Install, back up the VM image, a lot less problems than having it as your main OS
MS Office is available even for Android these days.
Otherwise Wine should work, and ain't there some cloud MS Office these days?
The cloud versions are incomplete and don't work with plugins like Endnote. The cloud version of PowerPoint struggle with movies and large resources.
There are use cases where OpenOffice is a vastly better tool for the task at hand. For instance, reading a CSV file that happens to use extended UTF-8 characters with some fields that have important preceding zeroes. In these situations it is possible to import the data into OpenOffice without the prospect of it being mangled by 'clippy'. Sure you can create a new spreadsheet and import a CSV file from disk into it with the data read as 'just text' in UTF-8 but the people I send CSV files to do not do that with their Microsoft ways. Consequently you get so far in and realise you actually need to re-read the source data because it has been Microsofted with bizarre things like capitalisation.
Excel obfuscates data and obfuscates filenames. It also promotes arcane ways of working, e.g. vlookup things held together with blu-tak and string when a simple table join on the original data does what is required correctly with no hand-crafted nonsense.
Too often I see things being solved in Excel where a small bit of code does a better job of creating the report or things like Fusion Tables do a better job of fancy presentation.
I no longer lock in to Excel world, I don't see it as a professional tool.
Try collecting some accounting records in LibreOffice Calc and then finding your accountant uses Excel. Time lost fixing the mess is probably worth more than the cost of MS Office for a single incident. If you need this kind of interoperability more than very occasionally, that alone could be a deal-breaker.
Also, LibreOffice 5 on Windows 7 appears to be a disaster. We installed it for the first time a few weeks ago, on one new PC at work just to try it out, and it's exhibited numerous very obvious graphical glitches, crashes and performance problems so far even just doing basic spreadsheet work. It also seems to have arbitrarily changed a bunch of things from earlier versions, such as the default colours available for colouring or highlighting cells in Calc. Maybe the stability is better on Linux, but even then the changes from LO4 are presumably still the same and just as frustrating.
In regards to changing defaults, that's often the case. Microsoft do the same thing, possibly worse.
Can you change the default colour palette?
Choose Tools - Options - Charts - Default Colors
We'd have to look into the sorts of changes you mentioned if we were going to stick with 5, so thanks for the suggestions. However, given the graphical glitches and instability, which unfortunately make it borderline unusable on our test system, I don't think we'll be considering a larger scale migration any further until (I assume) some future updates that fix those things have arrived.
The glitches and instability appear to be across the whole suite, BTW. Basic stuff like drawing menus, toolbars and tabs is broken in very obvious ways, all the time. I'm guessing there's some fundamental problem with the routines LibreOffice uses to draw those graphical assets instead of the standard Windows functionality. Either that or there's some horrible conflict with the graphics drivers on the new machine, which is always a possibility but would be surprising at this point given how many other programs do seem to work OK.
Try turning off OpenGL:
You can do this by going to to Tools ▸ Options ▸ LibreOffice ▸ View.
P.S. I'm biased about LibreOffice as I have commit access and I'm working on the code at the moment. I do acknowledge its frustrating when things don't work, and I don't want to deny there are issues preventing you from adopting.
If it's not too much bother, can you file a bug?
I honestly wouldn't know where to start with filing useful bug reports. I'm a software developer myself, so I appreciate the need for useful information and ideally reproducible test cases, but at the moment we're seeing graphical glitches in everything from menu displays to dialogs to the tabs for different sheets, far too many different areas to isolate and investigate each one. It seems more likely that some combination of hardware/software isn't playing nicely on the test system, since presumably if everyone were seeing what we are the LO team would be seeing plenty of feedback already. If you'd like to investigate or try to triage it somehow, I can ask someone to get in touch by mail, and maybe that would lead to something specific enough to be worth putting in a bug report for more detailed investigation?
chris.sherlock79 at gmail.com is my email address, or hop onto #libreoffice-dev on Freenode and ask to speak to chris_wot (that's the IRC channel I hang out on the most frequently).