Going from macOS to Ubuntu
kvz.io
kvz.io
I'm on the fence about Electron. While I do love how it's made portability easier (especially to Linux) I do think people outside of our tech circle get forgotten about.
For example $100 might be pocket money for us but we do need to remember that not everyone in the world has that luxury. I think sometimes peoples obsession with making pretty things with Electron leads them to forget about people on low income or countries where computers are expensive resources.
There's also an argument to be made for how native applications are generally better for people who depend on accessibility features too.
The real problem with the older MacBooks (Pro) is weight really, for a machine that I have to carry with me every day.
As far as I know, there aren't that many 13 inch or less light options with more RAM outside of Apple either.
In comparison the MBP 2012 and a MBP 2016 do not differ in weight so much (1.4kg vs 2kg which is basically a package of flour) and if I am honest I don't really recognize the difference when carrying them in my backpack.
But it depends on the bag as well, because if you use a messenger bag for example the strain on the shoulder and the back is probably noticeable. Also many people like to carry their notebooks around with one arm / hand and of course this will be a huge difference then.
Some people like to use the Thinkpad X1 or the Dell XPS as a replacement but I don't have any hands-on experience with those.
I hope someone will recognize the gap in the market and jump in to produce 13 inch, retina screen uni-body metal notebooks with the ability to upgrade the parts and with all the ports you still need when not living in some bubble where magically everything was converted into USB-C overnight.
Of course 16GB is the max. you can put into an MBP 2012.
But: Who needs that anyway? Yes if you do heavy tasks like 4k-stuff and 3d-rendering but for most tasks you do with computers it's quite sufficient.
Personally I move my tasks to servers if they need more resources.
For many people it's not even a case of "saving up for a machine," because they might be using donated hardware. For example the OLPC (One Laptop Per Child) project that runs Fedora on low powered machines[1].
Even for people who can save up for new machines and do install Linux on them, that $100 is still an additional expense they wouldn't have needed irrespective of any comparisons to Microsoft nor Apple "taxes".
For these people, particularly the first group, Electron simply isn't an option. So at best developers are depriving themselves of a future growth market but at worst they're excluding deprived sections of society who are already isolated from the IT industry as it is.
That all said, I don't mean any of this as a criticism of yourself nor what you had written. None of what you said it technically nor morally wrong despite the points I've made. I see this as similar to the discussions made about non-English speakers being disadvantaged when learning programming languages.
We're comparing to a Mac though, so that sentiment really has no place in the conversation. The cost of more RAM in the world of Apple is much, much more than $100.
I just suffered through an automatic update on MacOS to Catalina - this has been the most painful, idiotic thing to happen in my studio in a long time, and I now feel about Apple the way I did about Microsoft last century, when I abandoned them .. just utterly disappointed, and more the point I feel exploited just so that Apple can update its OS and force us to move onto their next big thing.
More and more, I'll replace the Mac with an Ubuntu Studio-oriented DAW, and then I'll phase out using Macs entirely. Linux is catching up in a big way, especially for use as Audio/Media workstation. Its not 100%, but its certainly better than having arbitrary decisions forced on me by the OS masters in Cuppertino.
(And yes, I've disabled auto-update. Shouldn't have been on in the first place, on this production system...)
(Not sure why you got downvoted btw)
> its certainly better than having arbitrary decisions forced on me by the OS masters in Cuppertino.
This is a rather curious stance, as "force" is a hyperbolic word indeed to describe a default setting that you can permanently turn off in literally four clicks (System Preferences > Software Update > Uncheck the box for automatic updates, and accept the warning)
They are notoriously hard to get right, require lots of work invested, and easy to break (regressions!) but are not too sexy or interesting, require insane amounts of QA and don't have low hanging fruits. As a consequence, nobody wants to do them, and so the Linux desktop will probably always be a mess.
Oh, and then there is that aspect of it that unixes in general were not built with the desktop in mind, so things like vm.swappiness defaults might be completely wrong (Ubuntu still defaults to 60 to this day!) and the kernel low memory handling is just outrageously bad, if you compare it to Windows, for instance.
I would be the first person to pay proper money for any Linux-based OS that at least _attempts_ to solve these issues. I might even go as far to purchase a laptop specifically to get the OS on that laptop, like the Macs, however I'm not willing to sacrifice on the size and quality of said laptop, actually, I expect a very high quality product for my extra money, so unfortunately at the moment there is nothing out there right now that I'd buy based on this.
I often switch from 2x to higher resolution when I need more workspace.
You can see how it works here: https://www.imore.com/how-change-display-settings-your-mac
On some Lenovo hardware it’s usable, but still so far off of power management and suspend resume of both macOS and windows that it’s not an option for someone who spends a lot of time travelling with a machine.
Desktop workstation wise it is fine.
https://yarnpkg.com/lang/en/docs/install/#arch-stable
It's even more pronounced for VSCode.
For the jetbrains tools (including Datagrip), I switched to using Toolbox. It makes updating to new versions easier:
1. Suse Linux: don't know what version but it worked and broke my windows partition somehow (think it was a user error).
2. Debian: very stable but not cutting edge enough for my taste. I damaged it trying to get compiz fusion and all the wonderful 3d-FX to run on my desktop.
3. Ubuntu / Mint: more up-to-date than Debian plus some nice sane default etc. to just start working very quickly. Also a big community and some good ideas.
4. Manjaro (finally :D): even more up-to-date than Ubuntu plus AUR's! I love the way I can install software on this OS compared to Debian-derivatives. So far it's not much more work to maintain it than it was for my Mint/Ubuntu setup.
I installed Manjaro alongside macOS (high sierra) on my MBP 2012 to get the best of both worlds.
It pretty much works and I also don't have problems with hibernation as the author of the article describes. BUT I'm afraid my WiFi is not working as good on Linux as it does on macOS and also connecting my speaker via BT isn't working as expected - the sound is choppy and I'll need to fix it when I find some time.
I can confirm the problem with the clipboards, the key-mappings and also Snaps. This is something they did quite right on the Apple side and I hope enough people of the active Linux community will implement this consistency some time, too.
The problems with the keyboard maybe stem from too many choices how to set the layout. I was given the choice between 3 or 4 layouts without being sure which one to choose.
Now I can choose what OS to use depending on the task:
- Linux: Development (things like docker just work which is really nice), Mail (thunderbird is ugly but it can handle a lot more than Apple Mail which becomes unusable after some time), Security-related things (I trust my Linux more than macOS somehow)
- Mac: Office (especially when working with PDF but also compare Pages to LibreOffice which tries to resemble M$ office too much for my taste), Graphics (for me Gimp is no viable alternative to Photoshop; the GUI alone brings me into rage-mode), Day-to-day "tasks" (browsing, media etc. just work better on macOS)
What made me switch away from Ubuntu was that at some point I was forced to upgrade my OS version in order to continue to receive updates for my packages. I now prefer rolling the rolling release model (which Manjaro / Arch use)
Having relatively recent Linux Kernels available is also cool, I'm already on version 5.3.6 and this was trivial to do (5.3.8 is the most recent stable branch).
IMO this thing is way overblown. What applications these days do not simply use primary and clipboard selections in a consistent way? (FTR I like them separate very much as I would hate to have my clipboard contents change by simply selecting some text.) Middle click is not a shortcut for Ctrl+V!
Ctrl-C is indeed used to send SIGINT to the foreground processes in terminals and thus terminal emulators, and the established alternative for terminal emulators is to replace Ctrl-C/V copy/paste with Ctrl+Shift+C/V (I think that's how even cmd.exe works these days). Copying and sending a SIGINT would hardly be a useful default.
When I switch to a Mac at work I miss this functionality (though middle button copy works in the Mac terminal)
And honestly on Mac copy/paste between jet brains software and x windows, it’s not working great on all Mac apps either..
I say this because I have ctrl(+shift)+c committed into muscle memory and find it jarring to use cmd+c
On the one hand, I’m thinking about getting an XPS because it’s literally 2K cheaper than a macbook and is upgradeable. On the other hand, a macbook still has a bit better build quality and macOS is still the most polished and easy to use OS (even after Catalina).
I need a stable OS that allows me to be productive without having to waste hours looking for workarounds and setup and doesn’t break my config every upgrade. I also really, really like Time Machine.
But again, if this post is signaling to you: Ubuntu is still no macOS. Then that's exactly what my experience is like. That said, I'm productive on it, and there's things to like even so.
It really depends on what you're preferences are. The author is customising Ubuntu to behave like macOS, so naturally it will take longer. I have the opposite problem where I've spent hours in total configuring macOS to be more Linux-like and it's keyboard controls are still not quite "right", CLI isn't quite "right", etc. It's still a nice OS to run but it will never behave quite like the my personal preferred platform.
However I'm not saying one OS is better nor worse than the other, just that the level of personalisation on modern OSs will always depend more on the person than the OS.
We should, IMO, take into account the default user experience. How is that? Sure, you can install WSL and Bash on Windows but by default you have a different CLI. How is that CLI? The reviewer went with Ubuntu because that is the most popular Linux desktop with a healthy community, yet at the same time considered NixOS [1]. At the same time, they're making all kind of modifications which makes it very personal and unique but also less useful. As a blister, they're sharing their modifications (with comments) which is nice.
Whenever I use a VM in macOS (usually Kali) I also am running with hacks in macOS to make copy/paste work seemless in the VM. Because from Linux, I can't expect it to work. But that is also why this review is useful: you can try to run a VM on Linux, and see if you can modify it to a more Mac-like experience. If that works for you, perhaps running macOS on your laptop and Linux on your desktop works out. Because for something like a desktop, I find it silly to shell out so much for so little (iMac, Mac Pro) given you can build a powerful workstation for very little amount of money (I just did that with the latest Ryzen series).
[1] I'm currently trying to find time to install NixOS on a separate partition and giving it a whirl to replace Ubuntu 19.10.
> The author is customising Ubuntu to behave like macOS, so naturally it will take longer. I have the opposite problem where I've spent hours in total configuring macOS to be more Linux-like and it's keyboard controls are still not quite "right", CLI isn't quite "right", etc.
I could've summed it up as follows: reviews like these are in-depth but specific, while generic out of box experience applies to all but lacks for power users.
As an example, macOS does not come by default with a package manager, it nowadays has Zsh as default shell, and does not ship with Python anymore.
Now look at it other way around. How much time would you have to spend to configure OSX to behave like Ubuntu?
As someone who uses both, I'd kill for middle click paste...
As of today, without any extra clipboard manager installed, if I copy something from the Network Manager GUI, and I close it, the content is lost.
(I'm a hardcore linux user, so this is a small joke, but still a typical Linux issue)
Having said that, with the HWE and PPA strategy, Canonical effectively solves the problem of troublesome upgrades. Nowadays one can stay on a LTS for many years, and still have an up to date system.
Of course with the strategy one won't get desktop environment updates, but that's implicit in this choice.
As a small footnote, Linux-compatible machines to consider (but not necessarily preferrable as whole), are the Lenovo alternatives, as the XPS has a disappointingly mediocre keyboard, whose keys bend on the sides.
> I need a stable OS that allows me to be productive without having to waste hours looking for workarounds and setup and doesn’t break my config every upgrade.
Exactly this, If I just want to get my work done and avoiding tweaking sane defaults or googling issues or reverting settings in my specific desktop setup, I'd choose macOS straight away. For only development issues, I would need a machine that is better for finding or debugging system-level bugs in low-level software components, I'd choose a XPS with Ubuntu.
A Hackintosh or Linux on a Mac both require extensive tweaking depending on your requirements and may not be for the faint of heart. Your milage may vary here.
I'm just unsure of how much productivity I'd lose when going back to windows with a virtualized linux for software development.
I guess I have to hold out and hope for the new macbook pro 16".
Switching from X to Y while expecting Y to work like X requires some configuration however not that much these days. It used to be impossible.
I am a linux and ios user and in 2019, "the world is my oyster". I can effortlessly work on terminals and servers of any contemporary OS. Damm, I can even linux apps on one of our intern dedicated chromebooks if I were to forget my laptop home cough.
I feel a bit sorry for windows and macos users. It seems their ways were a bit too opiniated / proprietary to be embraced at large.
Here's the relevant part of the song about Linux: https://youtu.be/CPRvc2UMeMI?t=316
You won't get that in my experience. I've used MacOS, Windows 10, and various Linuxes over the last few years. Every Linux I've used swallows literally 10x the amount of fiddling / searching / configuration time compared to the mainstream alternatives (I log all my sysadmin time, so this is an objective measure for my own case). Linux is currently my main OS (indeed the only one on my daily work laptop), because I find the trade-offs for development work worth it. But only just. It is a total pain in the arse.
You will of course get people informing you that distro X just works, but invariably they either have minimal requirements that a default installation meets, or they have accumulated thousands of hours worth of expertise that naturally makes it seem to them that everything is simple and transparent. Which it really isn't.
Add to that an appreciation for better keyboard and non-shiny screen... overall I feel better developing on this than Macbook pro surprisingly.
> overall I feel better developing on this than Macbook pro surprisingly
Me too with my current setup despite some configuration frustrations. I do actually prefer it (which is why it's stuck around), but that's after having spent far more hours fiddling around than I ever wanted to, and with a bunch of things still not set up because I've spent my sysadmin time budget.
When I'm in the programming flow, I kind of love Linux. Everything's super-fast, the UI is unfussy and keeps out of my way, and it mostly kind of leaves me alone.
But when it comes to actually configuring or changing anything, the irritation mounts and I wish we had a real 21st century desktop OS. By the 22nd century, maybe.
I simply don't want that. If I close the lid then to move the laptop more easily to the next room/next floor for a meeting, I might not want it to go to sleep. When I want to suspend I run a single command. I could put that command on a key combo, so it's not like I can't fix it. I want to control what happens when I close the lid, and more often I want nothing to happen. I have a shell open anyway, so I can run my command...
But I've had that close-lid-for-suspend fail on Windows so many times, so maybe my Linux stance is too muddled anyway :P
Also both of my ThinkPads stay with power for days when suspended (ok, not weeks, I admit that) so in this case Dell is to blame I guess.
Don't worry, it's configurable.
As a related aside, it's amazing the number of people who earnestly believe that macOS comes with a completely locked down set of options/preferences that you cannot change at all.
And yes, Dell is to blame for the power consumption, also according so someone commenting on the blog post, I updated the blog post accordingly
I have an old Macbook Air 2014 with 4 gb ram. It is sluggish af. If I open many heavy apps and then lock screen (I do every tim I go to kitchen or bathroom on job) then when i unlock it - it can take up to several minutes to function normally. So Amphetamine.app is must for me.
I never thought about it that way, but this is kind of true. Many apps I use everyday on Linux are available on Linux because they are built using Electron.
I'm holding out hope for new keyboards so I can stay with macOS. For now using wonderful Realforce keyboards 99% of the time anyway.
I like some things but I am also frustrated with a number of things: I miss the split clipboard, I hate the insufficient number of USB ports and the fact that I have to use a dongle, I miss the vertical maximize and the touchscreen.
Seriously, I've been on Ubuntu for 11 years prior and Arch for 3 after that. I have built Linux based supercomputers, and administrated clouds of thousands of raspberry pi edge nodes and I have NEVER compiled a kernel in all that time.
And I did have other machines than ThinkPads...
I'm very much looking forward to ditching the Mac, especially after the Catalina fiasco. Ubuntu is catching up in leaps and bounds, and the existence of a distro variant designed specifically for Audio/Video professional use (Ubuntu Studio) is very, very compelling. The Ubuntu Studio guys, as well as the Ardour group, get my monthly donation with pleasure ..
Yeah, at a quick glance I don't see what that's achieving.