I switched from macOS to Linux after 15 years of Apple

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
  • website

    The elementary.io website (by elementary)

  • > My advice to you coming from macOS is to explore Gnome using either Debian or Fedora.

    I love Debian. But really, if you want the best experience on the desktop you really want to be using a rolling release distro or something that’s released more often than Debian.

    If you’re coming from MacOS something like elementary OS [1][2] might also be a good starting point.

    [1] https://elementary.io/

    [2] https://blog.elementary.io/elementary-os-6-odin-released/

  • readline

    Readline is a pure go(golang) implementation for GNU-Readline kind library

  • but that's the readline shortcuts which are the same no matter which Unix terminal you are using, on macOS, Linux, cygwin, git bash, WSL...

    https://github.com/chzyer/readline/blob/master/doc/shortcut....

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • PhotoGIMP

    A Patch for GIMP 2.10+ for Photoshop Users

  • In terms of UI or actually under the hood?

    I've found PhotoGIMP makes GIMP UI more like Photoshop, which helps me a lot: https://github.com/Diolinux/PhotoGIMP/releases

    On a Mac I switched from Photoshop to Pixelmator no problem. Hoping PhotoGimp can help me do the same.

  • sublime_text

    Issue tracker for Sublime Text

  • Closest to BBEdit, and worth paying for is SublimeText https://www.sublimetext.com

  • iced

    A cross-platform GUI library for Rust, inspired by Elm

  • openzfs-docs

    OpenZFS Documentation

  • - Don't give up to early and switch distro, if something does not work - try to do your research first and then stick to your choice

    For everyone who's interested, I ended up using Artix Linux (Arch, no systemd) with encrypted ZFS on boot and KDE as desktop environment, and I'm pretty happy so far. Resources I recommend are:

    https://github.com/openzfs/openzfs-docs/blob/91d28894a74a19f...

  • krohnkite

    A dynamic tiling extension for KWin

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • docker-mailserver

    Production-ready fullstack but simple mail server (SMTP, IMAP, LDAP, Antispam, Antivirus, etc.) running inside a container.

  • Here's my own slightly out of touch that simultaneously holds true for me and doesn't for a very large part of the populace:

    1) XFCE is the pinnacle of desktop environments: https://xfce.org/

    It's extremely stable, looks good, works fast and is customizable. It works equally well on old underpowered devices, modern ones, as well as servers (should you ever need that sort of thing for whatever reason). It also has plenty of widgets without any of the modern bloat.

    2) LibreOffice is great open source office software: https://www.libreoffice.org/

    It started out as a fork of OpenOffice and has since become the mainstay under GNU/Linux distributions. It does word processing. It does spreadsheets. You can make drawings and visualizations in it. It does presentations. There's even a simple database offering in there, a la MS Access.

    It also supports MS Office formats for the most part and can convert them to open ones with very few issues! The performance is also better than any web based offering. Plus, it's cross platform!

    3) Thunderbird is perhaps the best mail client, regardless of platform: https://www.thunderbird.net/en-US/

    It's stable, reliable and has its origins in Mozilla. It does everything i'd expect a mail client to do and i've had no problems with it to date. Plus, it's cross platform!

    As for mail servers, i think that mail servers are a horrible mess for the most part, regardless of which platform you need them on. I think that your best bet in that regard is just using a Docker container that packages all of the components that you'd need: https://github.com/docker-mailserver/docker-mailserver

    4) This is absolutely true, but then again, you can say the same about any piece of unpopular hardware.

    Linux on mobile phones is a mess. Then again, even FreeBSD on certain pieces of desktop hardware oftentimes fails to work as well. Many years have passed, but this can still be problematic, given that perhaps we treat drivers wrong as an industry.

    My cheap Chinese netbook (i'm not too well off financially) had the mouse not work on Fedora and some other distros. Sometimes the audio wouldn't work. Now, sometimes the mouse gets stuck in a state where it acts as a scroll wheel. In Windows, function keys worked as they should (after pressing the Fn key you could access them), but in Linux distros it was flipped and i found myself having to press Fn to use the F1-F12 keys, with no option in BIOS to flip this. The fingerprint scanner just doesn't work and isn't even detected. The Wi-Fi drivers didn't work and i had to compile them from some random GitHub repository that i found online. The distro didn't have GCC and the netbook doesn't have an ethernet port so i had to suffer through doing an air gapped install, which was problematic because of the dependencies. I got it working for the most part, but it was a pain.

    Things really should be better. But that can probably only be achieved by either open drivers and open standards for most of the hardware out there, or by killing off about 75% of the hardware vendors out there, which in practice simply means that you only have to buy hardware that works well (e.g. Thinkpads).

    5) The choices that i find myself making are rather easy - either i use open source software, or i do less.

    However i agree for the most part with the observations about Linux not being an awfully popular platform for porting applications. I do think that this has three main causes: packaging being somewhat difficult to get started with (as well as needing to support a variety of distros), the GUI frameworks across Windows/Linux/Mac being a total mess and there being no "good" options out there, and then there also really not being a large commercial effort to make the struggle of porting something over worthwhile.

    Interestingly, the GUI framework situation isn't such a large issue if you go with something like Lazarus, JavaFX or even Swing for your software, but those can be ugly, so people don't.

  • LibreOffice

    Read-only LibreOffice core repo - no pull request (use gerrit instead https://gerrit.libreoffice.org/) - don't download zip, use https://dev-www.libreoffice.org/bundles/ instead (by LibreOffice)

  • Here's my own slightly out of touch that simultaneously holds true for me and doesn't for a very large part of the populace:

    1) XFCE is the pinnacle of desktop environments: https://xfce.org/

    It's extremely stable, looks good, works fast and is customizable. It works equally well on old underpowered devices, modern ones, as well as servers (should you ever need that sort of thing for whatever reason). It also has plenty of widgets without any of the modern bloat.

    2) LibreOffice is great open source office software: https://www.libreoffice.org/

    It started out as a fork of OpenOffice and has since become the mainstay under GNU/Linux distributions. It does word processing. It does spreadsheets. You can make drawings and visualizations in it. It does presentations. There's even a simple database offering in there, a la MS Access.

    It also supports MS Office formats for the most part and can convert them to open ones with very few issues! The performance is also better than any web based offering. Plus, it's cross platform!

    3) Thunderbird is perhaps the best mail client, regardless of platform: https://www.thunderbird.net/en-US/

    It's stable, reliable and has its origins in Mozilla. It does everything i'd expect a mail client to do and i've had no problems with it to date. Plus, it's cross platform!

    As for mail servers, i think that mail servers are a horrible mess for the most part, regardless of which platform you need them on. I think that your best bet in that regard is just using a Docker container that packages all of the components that you'd need: https://github.com/docker-mailserver/docker-mailserver

    4) This is absolutely true, but then again, you can say the same about any piece of unpopular hardware.

    Linux on mobile phones is a mess. Then again, even FreeBSD on certain pieces of desktop hardware oftentimes fails to work as well. Many years have passed, but this can still be problematic, given that perhaps we treat drivers wrong as an industry.

    My cheap Chinese netbook (i'm not too well off financially) had the mouse not work on Fedora and some other distros. Sometimes the audio wouldn't work. Now, sometimes the mouse gets stuck in a state where it acts as a scroll wheel. In Windows, function keys worked as they should (after pressing the Fn key you could access them), but in Linux distros it was flipped and i found myself having to press Fn to use the F1-F12 keys, with no option in BIOS to flip this. The fingerprint scanner just doesn't work and isn't even detected. The Wi-Fi drivers didn't work and i had to compile them from some random GitHub repository that i found online. The distro didn't have GCC and the netbook doesn't have an ethernet port so i had to suffer through doing an air gapped install, which was problematic because of the dependencies. I got it working for the most part, but it was a pain.

    Things really should be better. But that can probably only be achieved by either open drivers and open standards for most of the hardware out there, or by killing off about 75% of the hardware vendors out there, which in practice simply means that you only have to buy hardware that works well (e.g. Thinkpads).

    5) The choices that i find myself making are rather easy - either i use open source software, or i do less.

    However i agree for the most part with the observations about Linux not being an awfully popular platform for porting applications. I do think that this has three main causes: packaging being somewhat difficult to get started with (as well as needing to support a variety of distros), the GUI frameworks across Windows/Linux/Mac being a total mess and there being no "good" options out there, and then there also really not being a large commercial effort to make the struggle of porting something over worthwhile.

    Interestingly, the GUI framework situation isn't such a large issue if you go with something like Lazarus, JavaFX or even Swing for your software, but those can be ugly, so people don't.

  • osc

    The Command Line Interface to work with an Open Build Service (by openSUSE)

  • Try it on openSUSE, the best KDE integration by far IMHO, since it is their standard DE since IDK/forever? Tumbleweed offers the newest packages, rolling like Arch, but with a huge test battery on OBS (https://openbuildservice.org/). Snapshots on upgrade make the thought of breakage (haven't had any) tolerable.

    Disclaimer: very happy user

  • egpu-switcher

    🖥🐧 Setup script for eGPUs in Linux (X.Org)

  • > Linux is the OS for people who like tinkering.

    This is just flat out wrong. I spend more time waiting for OS X to "upgrade" than I ever do with package management and kernel upgrades in Linux. Ultimately upgrades in Linux are easier, there's no tinkering required. For odd configurations, sure - there may be some tinkering you can do to make things work more how you'd like. For example I have a SFF desktop machine that runs an eGPU. I only want the eGPU for some OpenCV use cases and I run the iGPU for my desktop window manager. Sure, in that case I did have to tweak things a bit, but I actually found an eGPU manager [0] in the process and everything now "just works".

    But printing, window management, software installation, etc are all simple and just as easy (if not more so) than what you've described - "...hand-editing config files". I'd say you are not a Linux user or have not tried any notable Linux distributions in a long time if that's your perspective.

    > As for corporations - they already control your hardware.

    No, they don't. While, yes, Intel and AMD may have things in their hardware that I don't control - the Linux distributions I use don't have copious amounts of telemetry being fed back to corporations like Apple/Microsoft/Google.

    > But worse - Linux and corporations have both locked down your imagination to the point where you cannot imagine that your experience does not generalise.

    I'm not sure what you're trying to say here but I'd have to say, in my opinion, the comment doesn't seem to make any sense given my long-term experience with Linux on the desktop.

    [0] https://github.com/hertg/egpu-switcher

  • lg

    A basic tool to adjust brightness on LG Ultrafine displays on Linux. (by chrisdavies)

  • I have the original one made for Mac, with only thunderbolt inputs. It's nice:

    - 5k

    - Built in webcam

    - Built in speakers

    - Built in mic

    All work on Fedora. Thinking about it now, I realize that I may be overselling it in that I did have to tinker to get brightness adjusting to work. I installed this [0] tool, and mapped +/- to Super +, and Super - so that I can quickly adjust brightness.

    So, it's definitely not as seamless a setup as the Mac, but it was honestly not bad at all and is a great setup.

    [0] https://github.com/chrisdavies/lg

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts