Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Ask HN: Switching from OS X to Linux
98 points by 0942v8653 on Feb 19, 2015 | hide | past | favorite | 164 comments
I'm switching from OS X to Linux because I'm tired of having to have a kernel extension to remap keys and a stupid "window manager" just so I can hit Caps Lock+Up to make a window fill the screen. But more importantly, I'm tired of every feature and option being taken away from me. OS X is just going downhill, so it's probably a good idea to switch as soon as possible.

There are a few things that I'd want in my new Linux distro:

- I'd really love to keep my OS X-style keybindings. It's really frustrating for me to be on Windows and try to paste the system clipboard into a command line. What is it again? Shift-Insert or Control-Insert? And how do I open a new terminal window? Alt-F2?

- The above also goes for Emacs text editing bindings (OS X comes with C-p, C-n, C-k, C-o, C-v, etc.). I want them around too.

So being able to rebind keys is really important to me.

I'm also looking to replace a couple apps:

- iTerm2. I was sure this wouldn't be a problem, but after looking more into it, apparently ... it is. I've heard that some emulators can't even wrap text properly. I'd also like if it could support profile switching via escape code and other nice things like that.

- Alfred. Not so much for searching for applications, more for having a mini-"command line" that I can use from anywhere.

Another thing is compatibility. Of course if that was my highest priority, I'd go with Ubuntu and Unity. It seems like more and more things are starting to say "Linux" when they mean "stock Ubuntu". I cannot stand Unity, so I'm thinking Linux Mint. I'm also giving Elementary OS a try in a VM right now, so we'll see how that goes.



Good! I switched to Debian Linux on my Retina MBP about 4 months ago fulltime and after a few weeks of twiddling and fiddling it's super fun, fast and nice. I'm really enjoying it.

I normalized all the keyboard shortcuts using several methods, the most important one is to switch Cmd and Ctrl keys. I documented that here: http://mntmn.com/Hipster%20Linux#keyboard-cmd-ctrl-copypaste...

I use Terminator for Terminal and set up Ctrl-C und Ctrl-V for copy and paste shortcuts. Terminator will smartly handle Ctrl-C as a signal when there is no selection.

I use XFCE with a custom HiDPI theme and app switcher works with Cmd-Tab. I bound Cmd-Space to Application Finder which gives me a Spotlight-like launching experience. For fulltext search I can recommend recoll.

I use Ergoemacs which gives me CUA-like shortcuts in Emacs, too.

Feel free to drop me an email (lukas at mnt dot mn) if you need more tips. Almost everything can be made to work.


Also, a list of superb tools:

- Inkscape instead of Illustrator - GIMP instead of Photoshop (just install Photoshop keyboard shortcuts and use single window mode and it's much less "alien") - Iceweasel/Firefox instead of Chrome (super fast, works well with HiDPI and the dev tools are really on par now) - Steam (obvious) - pavucontrol as audio mixer - ncdu to track down disk space usage - sxiv to view images - zathura to view PDFs

In general I do a lot more stuff via the commandline now than before and a selection of custom scripts in ~/bin is growing. For example I have a script "serve" that will copy a file via scp to my webserver and return the URL that I can then share, and I have cronjobs that fetch my bank account balances and synchronize my mail via offlineimap etc.

And the thing I like most is that I know exactly what the running processes/services are doing; there are no adware/crapware/updaters; memory usage is minimal (about ~150 MB for a clean desktop); the system never swaps (8GB RAM).


Opera's whole UI is hidpi enabled, unlike with FF and Chrome. You might want to give it a try.


That's a great suggestion.

I've been through everything trying to get a decent HiDPI experience, I'm running Opera beta and it all just works perfectly.

I'm running Debian Testing/Jessie and I've found that the Cinnamon Desktop Environment is the best for me, I've tried them all (trying to get the best results for HiDPI) and it is the one I'm most happy with.


> unlike with FF and Chrome

Both of these work fine in hidpi, see: https://wiki.archlinux.org/index.php/HiDPI


Did you do anything for trackpad gestures? My last attempt using Linux on a MBP (~3 years ago) was abandoned because I couldn't get over not being able to do three-finger swipes, etc.


I bought an MBP just to run Linux on it a few years back. The WiFi wouldn't work and the gesture support sucked. I love Linux SO much more than OSX or Win so it was a huge disappointment. The WiFi issues have been solved, but the gesture support on OSX is still amazingly superior.


No, I'm not a big fan of gestures, for me keyboard control is more important. Smooth 2-finger scrolling works, though.


I'm running Linux Mint 17 XFCE with newer kernel and can confirm that everything works well. Switching to a >3.16.x kernel provides the Thunderbolt support I needed for my Cinema display ... everything else just works[1].

[1] With usual caveat that pulseaudio is horrible. With wired headphones it only crashes about once a week ... with bluetooth headphones it's at least once a day. It doesn't appear to like the device "coming and going".


> I use XFCE with a custom HiDPI theme

Your documentation is great, thank you, I'm trying your XFCE4 theme right now (I've been using Cinnamon until now).

Could you possibly clarify these steps as written on your website for me?

[1] Activate in xfce4-settings-manager > Appearance > mntmn

[2] Activate in xfce4-settings-manager > Style > mntmn

I've launched xfce4-settings-manager and can set the "Appearance" in [1] to be mntmn but can't find where to set [2] (sorry xfce4 noob).


Do you use an external monitor with your MBP? If so, how well does it work?

Also your docs don't mention how much battery life you get ;)


Ubuntu 14.04 Trusty Tahr is where you want to be. It Just Works, plus there's a huge and awesome community to help out if you have questions. I haven't tried the derivatives, like Mint or Elementary, but I've heard good things. Note that even though Ubuntu is based on Debian, you do not want Debian... It's release cycle is a lot slower, the UI is much less polished, and you'll be stuck with versions of software that are really really out of date.

A note on the name and version - 14.04 means released in April 2014, and the names go up alphabetically per release (T U V etc).


Fedora's another solid option; it's much more bleeding edge than the Ubuntu LTS releases, but it upgrades cleanly and tends to be very developer-friendly.


Fedora is a great platform if you like to be living in the future, where what Fedora does today is what other distributions will reluctantly pick up on in a few years.

Fedora was one of the first to move to chkconfig-style scripts, and it was one of the first to systemd. It sort of forces you to learn new things, even if you don't want to.

The big downside is the updates taper off really quickly, so unless you keep rolling forward, you'll soon end up with an orphan distribution. Fedora is the philosophical opposite of the Ubuntu LTS releases.


Fedora's also a buggy mess at least 99% of the time. It's not something I would readily recommend to even an experienced user, let alone one new to GNU/Linux, unless they're prepared to use an operating system which is in no way meant to be stable.


This is true if you're running pre-releases, but what kinds of issues have you had elsewhere?

I've been running Fedora for over a decade, and while it suffers from being bleeding edge sometimes, I don't think I've ever had stability issues or things I'd describe as a buggy mess.


I've only used "stable" Fedora releases (i.e. the ones officially released, named funny names, etc.). I think the most recent I used was whatever one came right before Spherical Cow (or maybe Beefy Miracle; my mind has done a good job of suppressing Fedora from my memory, which I'm thankful for, lest I be diagnosed with PTSD); whatever it was right when Fedora had switched over to systemd.

Fedora would throw kernel panics on seemingly-minor things. Things like starting Xfce instead of GNOME3, for example. Things like running for more than 15 minutes. Silly cases. The hardware was not the problem; it handled Slackware (a non-systemd distro) and openSUSE (a systemd distro) quite alright. Because it handled openSUSE alright, I knew it wasn't systemd itself either (though that certainly didn't help).

Fast forward a year or so, and I'm investigating using Fedora in order to leverage FreeIPA to authenticate against an Active Directory environment. Fine and dandy for all of three days, after which Fedora magically forgot all my network settings without any explicable rhyme or reason. Switched back over to openSUSE (which also has AD integration features - and much more polished ones, so I found), and everything worked fine for several months (after which I ended up finding a better job anyway).

To put this in perspective, I've found everything from Debian Sid to Arch to Slackware-current to openSUSE Factory significantly more stable than Fedora. I've also found RHEL and CentOS to be significantly more stable than Fedora. By some god-forsaken Beefy Antimiracle, Fedora somehow manages to fail even harder than Softlanding Linux System (which - if you know your distro history - was so awful as to cause Pat Volkerding and Ian Murdock to create Slackware and Debian (respectively) in a desperate bid to give people good reason to not use Softlanding Linux System). That's absolutely depressing that an ancient and horribly-designed distro from 1993 running on my ancient Compaq Presario 1210 runs better than a supposedly-modern distro like Fedora.


> you'll be stuck with versions of software that are really really out of date

I've had way more trouble with out of date packages on Ubuntu than Debian (Sid).


> I've had way more trouble with out of date packages on Ubuntu than Debian (Sid).

Just my two cents, but I've had way more trouble with missing packages. It's a pity, but Ubuntu repositories are growing at a much faster pace.

If I want the latest and greatest I can always compile from source...


Just to add to your comment. I've had almost zero issues with Sid, and the issues I've had I've avoided by using apt-listbugs anyways. I can't say that when I tired Ubuntu and Mint. Mint actually botched my install on an update, took me 3 hours to undo the mess and I promptly backed up and installed Debian on that machine. YMMV


> awesome community

I think a lot of us have had mixed experiences. I've had some that were awesome, but some that made #python look like a hippie drum circle.

(Of course, sometimes #python is a hippie drum circle, but that's another conversation.)


I agree. The problem is Ubuntu is too popular, so you get many "mainstream" users responding with really nasty hacks to make things work rather than fixing things properly.

Arch linux (actually I use a spin off called Manjaro) seems to be a lot better in that regard.


Arch is starting to suffer from similar problems, though, from what I can see; a large number of Ubuntu users are graduating to it and its relatives.

That said, as a Slackware user, I'll admit to the Arch wiki being one of my go-to stops for reading up on how to tweak some program or other; Arch's wiki and the Slackbook are both on pretty equal footing for the closest things the GNU/Linux world has to OpenBSD's manpages in terms of complete and comprehensive documentation on ever last facet of the underlying system.


Arch does seem to have a higher bar of entry, i.e. its a bit complicated to install. Ubuntu always seemed to aim itself at the inexperienced Linux user. I still have it on one of my machines as its the easiest way to get around secure boot.


Agreed. Too often it's the blind leading the blind.

"Oh download this script, and run it as root", or "Edit this file and paste the following". With no real understanding or awareness.


There's also a lot of impatience, intolerance, and infighting.

I've always liked Arch. I'll give Manjaro a look at some point.


Gnome Terminal is the shit. It's totally awesome and other terms seem to copy it, like xfce's terminal. It wraps text just fine for me, has profile switching and lots of other features.

Funny you mention that OS X is taking away options and features. That's how I feel about the Gnome team's approach to their desktop. But Gnome has a lot of small programs and widgets that I find useful. Even though I use stock Ubuntu and Unity on my main desktop, I use Xubuntu on all of my other machines. I'm using ubuntu and variants mainly because of the simple and comprehensive package management system. The variants are really cool too.

I'm not a fan of the Unity desktop either, but I find that once you get used to it, it's tolerable. It's like a useable version of Windows 8, more of a touch centric interface than a desktop interface. Fortunately all of the other Ubuntu variants have real menus. And the variants have a high degree of compatibility with stock Ubuntu so you can install and use things that are made for stock Ubuntu.


GNOME Terminal is missing any way of saving the scrollback buffer to a file or to the clipboard, which is a backwards step from iTerm2. But other than that, it is pretty similar.

One substantial difference though (which threw me at first...) as that it's much more reliant on keyboard shortcuts than iTerm2 is. There are a fair few things it can do that don't have any clickable UI. So the man page is worth examining, as is the Keybindings tab of the Preferences dialog - there are a few things you mightn't discover otherwise.


I actually wrote a bit on how to disable the sidebar in Unity so that it doesn't show up, ever[1]. Since you can't sever it entirely for everything else, stopping it from showing up is the best you can do.

I did this because I like the Unity top bar integration and indicator panels which has a nice sleek look to it.

[1]: http://jonalmeida.com./posts/2014/05/08/ubuntu-14-04-without...


After over a decade of fiddling, twiddling, tweaking, breaking, fixing and generally trying to use Linux on a desktop, I gave up and went the opposite direction, and I couldn't be happier.

I no longer actively fight my package manager because it decides that my kernel needs to be broken at this very moment (looking at you, openSUSE). I don't have to deal with the twiddling that one must do to get a working laptop setup. Drivers just work. Suspend/resume just works out of the box. Best of all, I can get shit done without fighting with the OS.

When I ran Linux as my desktop of choice, I floated between most distros with a pulse, trying out the ecosystem to find something that suited me. RPM, DEB, source, you name it I ran it. I avoided the forks of forks, sticking to mostly popular projects. In doing so, I learned that I really dislike KDE and Gnome, and I'm not too crazy about Xfce. I've tried the minimalistic approach (starting as far back as blackbox days) and something felt not quite right, like there was always something missing, and no amount of fiddling, tweaking or twiddling could rectify it.

I guess my point, if there is a point to this, is that your mileage will vary with Linux. Caveat emptor and all that.


I'm like you. I started using linux round the time the kernel hit version 1. It was ok because when I was young I could not afford a recent computer and linux worked best on my hardware :)

First years of my proffesional life I installed linux on all my laptops. Broken kernels, not working hibernate/sleep, battery life that sucked,... Every time I bought a new laptop some new tinkering followed.

I always laughed with macbook fanboys paying for their overpriced hardware. I switched and couldn't be more happier. Hardware is ok, OSX has a good terminal and as long as I can access this I'm happy. Decent and nice looking applications (I don't mind paying developers a good price for this) which are not on windows or linux. There are points of complaint but the overal experience of the mac and osx is still positive.


I suspect a lot of this is per user.. I too have been using linux since the early days (slackware 1.1 which was kernel .99 or something like that). . I used linux on desktops and servers.. had tons of issues in the early and middle years with laptops.. but these last 4 or so years I have been running Ubuntu on a bunch of laptops with no sleep issues.. no battery issues.. no tinkering.. except to get the 3rd screen working with my lenovo.. then again never got that working with either of my macbooks.. so individual mileage may vary.. personally I like Linux.. but I'll probably have to go back to Mac simply for Office.. too many office docs come my way that don't work in Libreoffice..


"Hardware is ok" In your mind, who makes a better laptop than Apple? In my experience build quality is unparalleled, but that obviously comes at a price. Having owned multiple macs, I opened up and attempted to look at other models (for work) and the only model that came close was the Razer Blade pro (which is similarly priced as the MBP counterpart).


> I'm tired of having to have a kernel extension to remap keys and a stupid "window manager" just so I can hit Caps Lock+Up to make a window fill the screen.

I'm using Karabiner + Seil for this. I suppose Seil is the kernel extension you mention? Is Karabiner technically a "window manager" or did you have another app in mind?

If this is the only source of your complaints, honestly, I believe you'll have a lot more to complain about Linux.

I understand your frustration at Apple's walled garden, though. It is...dis-empowering.


there's also ControllerMate which certainly has a kernel extension.


I used to use ControllerMate, but it just wasn't as good. Now I use Karabiner, but doesn't anyone else think it's a bit absurd to have to get a kernel extension just to remap keys?


Software comes in many shapes and forms. That it has to be a kernel extension in this instance seems a bit of an odd thing to complain about.

I'd be much more concerned if Karabiner couldn't exist in a future OS X. That you can have it, use it and have it work well is more important than the mechanics of how it works underneath.


I switched a few weeks ago because I was tired of OS X, too. I tried every distribution out there and the one I've kept is Debian Jessie. Debian is great in that it's a simple and stable Gnome experience. Linux can be much more dangerous than OS X in terms of applications crashing badly, so I like the fact that I have an OS that I have thoroughly tested, fixed, and that won't move much in years. And I can get both that and a few up to date packages thanks to package pinning.

Alfred is the tool that I was afraid I couldn't have. I tried a few solutions but they just didn't do it for me. Gnome's default search bar is hard to customize and the various launchers out there either installed huge libraries or weren't hidpi enabled. I ended up writing my own launcher. When I hit Win+Space, a terminal opens and runs a script of mine who relies on the fuzzy finder fzf by junegunn. I use it to open files, search the web, log me into websites automatically with KeePassX, handle the music that's being played, etc.

I actually wrote an article on this but I haven't had the time to create the blog I wanted to put it on. If you're interested, give me your email and I'll send it to you with the code I actually use.


I'm not familiar with these personally, but:

http://do.cooperteam.net/

Gnome Do looks like a Quicksilver clone. Seems stalled for a year.

https://github.com/ManuelSchneid3r/albert

Alfred-inspired, though possibly moving a little slow (no updates for a month, and those were readme/packaging). Claims to have a major refactor coming out this month.

https://github.com/qdore/Mutate

Alfred-inspired, looks active.

Mutate might be what I'd hitch my horse to, were I ok with something bleeding edge. Unsure if it supports complex workflows, though.


I have no experience with OS X and Alfred, but from what you describe it looks like krunner for the KDE desktop environment.

krunner is a mini-CLI you can open with alt-F2 by default (customizable of course). It allows searching apps or the web, opening web sites, search files, controlling music being played, or whatever really as it's extensible through plugins.

If using KDE is acceptable to you, you can learn more here: https://userbase.kde.org/Plasma/Krunner


Alfred is awesome http://www.alfredapp.com/

It is based on an idea from an older launcher called Quicksilver http://qsapp.com/

These types of apps have existed in OS X for a long time. I'm kind of surprised that Linux doesn't have an equivalent yet, as pretty much any open-source dev who uses a Mac laptop knows about the above apps.


They have existed on Linux for just as long, it's just you Mac folks haven't heard of them as there's more choice, and all the major desktops have this functionality built in, at least as far as app launching goes - just press the windows key and start typing works in Unity & Gnome at least.

Less chance for market dominance from any one tool.

The coolest, ultra minimal yet featureful one is dmenu, which I haven't seen mentioned yet. Gnome-do, Kupfer are also good.


Nice.

In doing a bit of Googling of dmenu I found this

http://alternativeto.net/software/dmenu/?platform=mac

Which may be helpful for others as a general way to find alternatives for a given piece of software on other platforms.


Thanks for the link. I'm not a KDE person and never have been, but this is a great tool. I haven't been able to write a calculator nor a dictionary with my setup, for instance. I don't miss them that much from Alfred, but I would definitely use them if I had them.


Try Kupfer. Been using it for years with no complaints. http://engla.github.io/kupfer/


Tried every distribution out there - and you chose Debian Jessie over LinuxBBQ?


You're absolutely right about Linux Mint. You can think of it like a curated Ubuntu. I'd recommend going with the Cinnamon UI. I've been using this combination for a few years now. About once or twice a year, I fire up a few other distros on one of my spare laptops at the house just to see where they're at. Mint is just a step ahead of the rest.

For your "mini-command-line" utility, I'd recommend picking up Guake terminal, and using the very easy hotkey mapper to map opening the terminal to something dead easy, like LeftAlt+Space. Guake is totally configurable, but with those simple hotkeys, you'll get a terminal. When you're ready to switch back, hit the hotkeys again and it will hide the terminal (keeping your session live). It supports multiple terminal tabs, which you can also switch between with a configurable hotkey (I use Ctrl+Shift+o and Ctrl+Shift+p to move left and right, respectively). Of course the display is ultimately configurable, too, so you can have it docked basically anywhere, transparent if you'd like, or as big or as small as you'd like. Highly recommended.


I am typing this on Mint just now.

The Cinnamon UI is nice to look at, and doesn't seem to be aimed at tablet users (this does my head in - I am sure 90% of people work at a desktops all day, not a tablet). But I found it would randomly start hogging the CPU and I never worked out why.

I am on XFCE now, and its fast and stable (though doesn't look quite a pretty).


Another Mint fan here. After years of trying various distos and being decidedly <meh> each time, Mint was a very pleasant surprise.


Try Elementary OS, its based off ubuntu and is almost a dead ringer for OSX. It has the window management you are looking for as well as a couple of apps. Try Synapse as a replacement for Alfred.


The recent kerfluffle in which the ElementaryOS team changed their download page to try to hide the "free" option and said "We want users to understand that they're pretty much cheating the system when they choose not to pay for software" makes me super hesitant to even try it. I'm not sure I want to be using a Linux distro produced by people who think that free-as-in-beer is a bug.


To be honest, I don't see that as too much of a problem; Ardour, for example, is free-as-in-speech and technically free-as-in-beer (since you don't have to buy Ardour to get the source code and compile it yourself, and it is indeed available as a package for most distros), but still only provides binary downloads via the website to users who pay for them. There are also plenty of distros - like RHEL and SUSE - that are only officially available in their paid-for versions (though both of those have corresponding free-as-in-beer development/testing versions - Fedora and openSUSE, respectively - and CentOS also exists as a theoretically-drop-in RHEL replacement).

Software has to be monetized somehow. SUSE and RHEL and Oracle Linux are monetized by subscriptions to support contracts. Slackware is monetized by sales of double-sided DVDs. Ubuntu is monetized by a mix of support contracts and begging for donations on the download page. OpenBSD is monetized by a a mix of donations and merchandise sales (including install CD packs and t-shirts and such). I'm not one to believe that ElementaryOS is any more or less sinful than any of those examples.


I don't have any problem with monetizing FOSS - I think it's awesome, in fact. I have a ton of respect for RedHat and their business model. Ardour's model is great, too - the product is free, but we'll sell you convenience. It's entirely possible to have a saleable product coexist with a FOSS license.

My issue with the eOS team wasn't that they said "we want to make money for this", but that they accused their users of being cheats for not paying them for the software, the vast majority of which they didn't write or maintain. I want OSS devs making money. Heck, I want the eOS guys making money, if they're making a product that people like and want to see continued. But their tack was pretty amazingly hypocritical.


On the same note as Synapse, give Albert a try; it's inspired a bit more directly by Alfred

https://github.com/ManuelSchneid3r/albert


Be careful when updating packages. As an OS X user used to blithely updating anything and everything because it always "just works," I've gotten into shocking situations where I've actually bricked my Elementary install simply by doing an update. When I approached Linux users about this, their response was something along the lines of "Yeah... don't do that." (Seriously?)

As a result I've had to run Elementary in a VM with snapshotting, and I roll back the snapshot if an update hoses the install. Kinda shitty, if you ask me.


It depends on the distro. Some distros can and will mangle themselves if you blindly upgrade everything without doing at least some research beforehand (Ubuntu and Arch are notorious for this; Arch because it's bleeding-edge and has absolutely zero consideration for compatibility between packages, and Ubuntu because... well... who the hell knows). Others do a much better job of making sure all packages are well-tested both in isolation and in integration before making them available as upgrades; Debian Stable, Slackware, and openSUSE are good examples of systems where you can usually do a blind upgrade of everything without problems.

And then you have NixOS, which - while not really mainstream yet - is probably a good indicator of the future of configuration and package management, and - I think - will someday be the gold standard here. Upgrade fucked up your system? No problem; just select your last-known-good configuration at boot, then try again (or don't try again, if that's your prerogative).


> No problem; just select your last-known-good configuration at boot, then try again

This sounds like a configuration that could potentially be applied to other Linux OS'es, no?


In theory, yes.

In practice, this tends to be a difficult problem to solve because most Linux environments are managed imperatively/procedurally rather than declaratively, meaning that in order to revert to a previous state, you have to be able to run the exact commands required to do so. The traditional answer is to manage such a system with Puppet or Chef - thus allowing an administrator to tell the system what it should look like rather than how it should go about it - but that's generally yet another layer of logical overhead to be considered.

NixOS - in theory, at least - addresses this more fully by integrating declarative configuration rather pervasively throughout the operating system itself, rather than trying to just add a layer on top of the operating system in order to manage it. It relies heavily on the Nix package manager - instead of installing a program directly to the filesystem hierarchy, it installs it to an isolated folder named with a theoretically-unique hash, allowing multiple versions of the same program to coexist without conflicting (and allowing users to pick which version they want), making it painless to roll back software upgrades (just go back to a different selection of which package folders should be linked to, rather than having to manually remove and revert each package), etc.; NixOS leverages this package management system for everything, rather than just the software installed, and will create GRUB entries whenever you commit your configuration changes (by running `nixos-rebuild switch` or `nixos-rebuild boot`, causing an instant configuration switch or a configuration switch on next boot, respectively).

Other operating systems can hypothetically do this, too, and they'd end up looking similar to NixOS in terms of how things are organized and configured. As I said, I think that's probably the direction where most operating systems will eventually go.


So all the actual filesystem entries are basically soft or hardlinks to the most recently selected version?

Time Machine on OS X works that way (as do a few other incremental backup solutions, I believe). Notably in Time Machine's case, it hacks a way to hardlink to entire directories which haven't changed, which is normally not possible. (There's a parallel here with how immutable data structures are managed.)


Indeed, Elementary OS is very handy for anyone coming from OSX.


But note that it is still in its infancy. I use 0.3 beta as a daily driver on my personal laptop, but only because all my work gets saved to git repositories or dropbox folders. If it craps out (hey, it /is/ beta after all!), I switch to an Ubuntu Live USB to work.

That being said, the more people on Elementary the better! I've grown to like Vala, and encourage devs to help contribute.


elementary os is quite stable. the only problem i have w/ it is the dev team promoting yet another lang to code apps. why not rust/nim/go?


Vala predates all these, and it's been a de facto GNOME standard for a while now.


The last time I heard from GNOME was about javascript binding. I think the choosing of programming language in this age is more to do with marketing. Piggyback is the right way.


I made the switch. YMMV. However, with all the bumps I went through, I'd rather have the minor issues I have now and then instead of going back to OS X. I switched for the same reasons, but the lynchpin was the constant issues installing native rubygems with the Xcode toolchain. It was always an issue I was dealing with.

My laptop runs Ubuntu 14.04. I don't care about the window manager much, other than the occasional lazy file-browse and notifications, since I am mostly in Emacs/Terminal/browser and use Synapse to switch applications.

My work computer is a Mac, but do most work in an Ubuntu VM. Since I am writing lots of JavaScript, I should feel compelled to a random test now in then within Safari and IE (in another VM). The company paid for the computer, otherwise I would not spend the money on one.

I like XFCE terminal, but I don't have a compelling reason why. I use multi-term in Emacs and screen within that for development.

The only long term problem is that printing has always been flaky. But, I have little to print, so it doesn't bother me. I just use my wife's Mac if I need to print something.

I do miss the Emacs-style keybindings in OS X. But, I imagine that things can be configured. I never did; I just dealt with it (even though I like Emacs keybindings better :))

Again, YMMV. I'd commit to working it in a VM first.


I have not had luck finding an equal to iTerm2 on Linux. While there are many to choose from, few combine all the features (color support, themes, layouts, configurable hot-keys for navigating panes, etc.) in one package.

The one thing I miss the most is having nearly border-less panes for differing font sizes. To my knowledge, that can't be done on tmux or screen.

I'd welcome any suggestion of a terminal with the features of iTerm2.


Or give a tiling window manager [0] a try. My favorite is i3 [1].

[0] https://en.wikipedia.org/wiki/Tiling_window_manager

[1] http://i3wm.org/


+1 i3 is pretty darn good. Would be great if it was a little more user friendly though :-)


I'm just curious what parts you find not quite user friendly enough?


Oh it would be nice to have reminders for keyboard shortcuts, in status bar when you press the meta key etc. Since you're relying on a lot of memorising - that would be a huge asset.


I second this recommendation, though I personally prefer XMonad or bspwm for my own tiling WM needs.


Have you tried gnome-terminator?[0]

[0] http://gnometerminator.blogspot.de/p/introduction.html


Here here! I recently did this - well, I moved to a linux VM. Somewhat.

First, I did not move everything; I only moved my dev enviroment. I have things bound to OS X and I can't say goodbye just yet entirely. But with everything in a VM I have a nice walled garden that i know will work, and I can update OSX with less hesitation as most of my time is spent in the safe world of the VM.

It also makes it easy for me to copy it over to my laptop (I'm on an iMac) and continue what I was working on from there; or to just reboot into windows and play some PC games. And being able to do branching at a machine level can come in handy too.

Anyway. To answer your questions about distros. I started with centos but it does not appear to be a great desktop OS, and chrome doesn't even support it. But I also noticed the font renderings in the browser were notably crappier, and ubuntu has a package to make that not suck so much.

So, I went with linux mint. I do NOT like the fact that the firefox it comes with prevents you from using google as your search engine (at all) because mint wants a cut of google's profits; so you simply can't use it. That still gets under my skin. But you can download Firefox directly and get around that, which is what I did.

But basically, anything ubuntu based. as much as I otherwise dislike ubuntu, it'll equate to the least tinkering required.

Otherwise my apps haven't really changed - everything I used regularly in OSX is in linux.

Some of the copy/paste behavior is nutty, but I haven't looked into tuning that yet to be honest.

But otherwise, I'm pretty happy with the move and the solution. If OSX gets worse I can move more into the VM.


Regarding the font rendering on CentOS, at least on recent versions of Fedora, I have been able to just run fedy and let it do its magic. The result is very nice and this was an area that bothered me a lot. So I would give Fedora 21 Workstation a try (with aim to keep in RH ecosystem, if you've got CentOS on the servers). This comment is completely biased, be warned.


I use Linux Mint dual-boot and recently started using it as a dev environment in a VM- albeit with Windows. Good distro.

On the Linux Mint site there is a workaround for using Google for search. It involves adding it to your choices, then selecting it.

Go here, and don't give up reading it too soon:

http://www.linuxmint.com/searchengines.php


Are you using a remote VM or are you running it local? I'm using a decent MacBook Pro (2014) with 8GB of RAM, but running an Ubuntu with VirtualBox is performant enough to work in it. Or are you just ssh'ing into your VM ?


Running it in a local virtualbox VM. I have a 4-core imac with 16 GB of ram and throw all 4 cores at it and a good portion of the RAM. Going with a fixed disk size instead of dynamic gave a notable performance increase, too.


I switched from OS X to Linux a few months back, and I'm never going back. I thought like you did originally, that I needed something "standard" like Ubuntu, but found Ubuntu does too many things and installs too many things. Instead I'm now using Arch Linux and i3 Window Manager. It's a long stretch from the beautiful Mac UI that I used for the past 15 years, but as a programmer I can't stress enough how awesome it is not to move my hands off the keyboard for 95% of the operations I do. Almost no mousing required at all. It got even better when I hacked in a few Gnome bits (gnome-session & gnome-keyring) so I could have a more comfortable experience. Nothing will replace the well-written apps you expect on your Mac, but generally if you can live with working-but-uglier apps on Linux you'll be fine. And given that unless you specifically develop apps for Macs, you're probably deploying on Linux anyway, you'll enjoy developing closer to the production metal.


Thank you for the comment! I've installed Arch Linux and i3 in VirtualBox and it is really fast. I don't mind the looks really—in fact, I like them much better than the flashy animations of OS X. It all feels much more focused.

I'm wondering, though, what terminal emulator do you use? I tried terminator first because it seemed the most featureful, but its central feature seems to be duplicating a lot of functionality that i3 already has. A few people have suggested gnome-terminal, which I like.


I've used LilyTerm, Terminator, and a few others. I've been using gnome-terminal for maybe a month now, and haven't found a reason to change.


I say Fedora, it's the easiest Mac (EFI) install that always works and it's packages are constantly upgraded, closest to a rolling-release you can get without having to work some magic.

I use it on a MBP2011 and it runs flawslelly, I currently setup my computers with Ansible. If you want as a rough guide you can check out what I did specifically for the MBP on my Ansible playbook here:

https://github.com/edgard/fedora-install/tree/master/roles/m...

Also, give it a look at the common-workstation role where I setup some defaults for my desktop computers like font rendering, apps and so on:

https://github.com/edgard/fedora-install/tree/master/roles/c...


I'm a big fan of XFCE for your DE/WM. It allows you to set loads of keyboard shortcuts for various WM activities like launching programs, switching workspaces, moving/resizing windows. As far as non-WM activities, look elsewhere in this thread for program recommendations.

The only Linux distro I can stand is Arch Linux. It will require you to become a sysadmin (comfortable with a shell, editing a few config files here and there, and following instructions from the wiki), but you sound comfortable with that. Arch will never break beyond recovery for you. It's a very simple distro that doesn't try to "do everything" on your behalf. Other distros like Ubuntu, Mint, and Fedora all seem to have a significant chance of self-destructing when I update them. Arch just keeps working. I've been using it exclusively for over 7 years.


My experience with Arch and updates is exactly opposite. Specifically, if I boot up a computer with Arch on it that has been sitting in a corner for a month or so, updating is almost guaranteed to break everything. I think this is just because of frequency of Arch updates. If you update every day, then it's probably no big deal. But then I find the same is true for other distros (go too long without updating software, updates break things). Personally I use Debian more than anything else, and that's mostly because I'm most comfortable and familiar with it.

Personally I use OSX (still Mavericks, for now) for development, but almost all of the code that I write gets executed in Linux VMs (often through Vagrant). For me, this eliminates most of the headaches that come from developing using open source technologies in a non-free environment. I'm sure it creates some headaches of its own, but I find it works well for me.


Arch is arguably worse than most about this, because their rolling repositories dump versions after a couple of updates are available. So if you wait too long to update, it can't even figure out how to get started, because it no longer has the slightest idea what the packages you have installed even mean.

Don't get me wrong, I like Arch a lot, and I've been using it as my main Linux distribution for the past five years at least. But if don't do a full "pacman -Su" at least once a week, it's absolutely going to shit the bed at some point.


I've been trying to keep a problem log for arch updates for the past few months [0] but I haven't tried not updating for a while.

Now I'm curious, so I guess I'm trying it for a month [1].

[0] https://arguggi.co.uk/blog/list.html [1] https://arguggi.co.uk/blog/Not-Updating/


I guess I'm kind of surprised that people are OK with updating infrequently. Don't your distros distribute security updates? How long do you wait before applying them?


I just want to use my computer. I don't want to just constantly administer it instead.

I usually don't want new features. I'd often rather have what's already there fully working. The lack of finished software available (e.g. TeX) is astounding.


I usually do updates about once a week. If I need to install a new package, I'll usually refresh everything then as well. But occasionally it's longer than that. I just forget for a week or so, go on holiday, etc.

Most of the time, I come back, do an "Syu", and it's fine. Occasionally though, things go pear-shaped. Once or twice I've needed to manually fetch packages from one of the archive sites and manually copy it into pacman's cache directory to get things up and going again.


In my case I might have had arch on a machine that just sat in a corner for a month. Boot it up -> update -> brick.


Manjaro is a nice spin off of Arch - with a graphical installer and package manager. I reckon probably have the skills to install Arch these days, but not the time or inclination to wade through pages of documentation.


Sounds like you want Debian or Debian-based distribution. I recommend you'd try vanilla Debian first because it gives you only what you want when you want it. No extra BS.

If you did like older OS X (10.6) you'd probably want to at least try Elementary OS which is essentially a Ubuntu on steroids and without the Canonical's BS trying to attain the polish of OS X. I would stay away from Mint as much as possible because it's not well optimised distribution in my opinion.

Even if you choose Ubuntu, you can always replace the complete desktop with something else. For example you can have Ubuntu without Unity. In fact many people do run Ubuntu with Gnome 3, KDE 4, Enlightenment e17, XFCE, CDE, or something else.

If Linux isn't your thing you probably might want to also check out what FreeBSD (or PC-BSD) camp has to offer. It might be little bit more familiar for you. And if you really want, you could run Darwin with XNU kernel and have a free and open source system which is made out of the same blocks that form the core of the OS X.

iTerm is pretty handy on OS X. There are lots of terminal applications out there for GNU/Linux. E.g. Gnome Terminal is pretty damn good and does wrap the text. But that doesn't mean it's the only one out there.

As for Alfred... there are several different similar "Quicksilver" replacements. I'd suggest that you check Gnome-Do. But again it's not the only one out there. You might also find it funny and useful to use something like Guake Terminal which is Quake's console stylish terminal that you can access by pressing tilde.

I'm giving you Gnome programs but KDE has its own completely equivalent programs too.

If you're new to GNU/Linux you probably want to start with KDE or XFCE. (Disclaimer: I'm using XFCE because it's flexible and small.) You probably might find the kind of polish OS X offers in Gnome 3 but it requires quite a bit of tuning to "feel good" as a DE.


Try one of the ubuntu flavours. http://www.ubuntu.com/about/about-ubuntu/flavours I'm currently working with Xubuntu. I have no idea about replacements for your applications.


I notice Bodhi Linux have recently released 3.0, I'd been using an older release. I'm a sysadmin command-line person, I like bash and a good terminal. Bodhi had visually appealing features, separating them from the Windows95 feel most other desktop Linux has. I switched to XUbuntu recently as while Bodhi and Enlightenment and Terminology are slick, they were missing critical features like copy/paste between applications and some functions needed a mouse. For their challenging the dull GUI status quo, i applaud them. I have recently been satisfied, like you, with Xubuntu and I am not using any jazzy or alternative terminal emulator.


After a MacBook air crash, I ended up on Debian/XFCE. This was more out of necessity than choice, as I could only afford a laptop with very limited resources.

I would recommend Fedora (what I'm using at work), if you like stable/reliable packages (Debian also wins here), especially if you're not requiring the latest and greatest everything.

In terms of UI, I really like what Elementary OS did, but they don't update their packages with any frequency (the current release is over a year old.) XFCE gives the customisability / get-out-of-my-way feeling that I sometimes want on OS X, but be warned that no Linux UI can match apple hardware and software for gestures.

In all, it's a minefield. Format a separate /home, and be ready to jump distros a few times to start with.


I use Manjaro[0] because it's got all the advantages of Arch (rolling release and AUR for pretty much any package you'd need) with none of the setup time. I use the XFCE version, which, if you weren't aware, is one of the most stable DEs ever. I've yet to have it crash on me in the three years I've been using it. Also, all the keyboard shortcuts are modifiable, so you shouldn't have any problems with it.

To replace Alfred, I use Synapse[1]. It doesn't have as many features as Alfred, but it does allow for shell commands to be run from it.

iTerm2 is the gold standard when it comes to terminal emulators. TBH, no console really comes close to it. In my experience, the only one that is even comparable is Konsole, which is for KDE. Installing it on a non KDE DE requires a lot of other KDE packages and looks like garbage in it, so I wouldn't recommend do that. I find that Terminator[2] is perfect for my needs when paired with Tmux.

[0] https://manjaro.github.io/ [1] https://launchpad.net/synapse-project [2] http://gnometerminator.blogspot.com/p/introduction.html


Thumbs up for Manjaro from me.

Its a bit more faff to set up than Ubuntu, but has way less error messages and problems. Likewise I have been "downgrading" my desktop since Ubuntu started with Unity. Reached XFCE, and I am pretty happy with that these days.


I find that Konsole works well in XMonad.. but I use a lot of the KDE application suite in XMonad (Konsole, Okular, Dolphin, GwenView, others..) so I don't mind the KDE packages.


I switched from Windows to Linux increasingly over the last 18 months. I'm currently running Ubuntu Studio 14.10. Studio is an "official flavor" of Ubuntu:

   + based on XFCE rather than Unity.
   + packaged with audio, video, and graphics applications.
   + defaults to a low-latency kernel.
My reasons:

+ I don't think there's anything wrong with Unity, I just don't fancy it. Ubuntu on the other hand is really well supported and there's even StackExchange's AskUbuntu for support.

+ All those creative apps are stuff that I think are cool, but I probably would not download most of them left to my own devices and I would curse profusely while trying to configure them.

+ The default to low-latency kernel is something that I had to work around until I installed and ran Grub-Customizer [1].

What I like about Linux is that it doesn't keep changing, and that it's relatively easy to find expertise in regards to settings...the expert signal to amateur noise ration is higher than with Windows [and probably OSX].

[1]: https://launchpad.net/grub-customizer


I'm currently using Ubuntu 14.04 at work and 14.10 on my personal laptop. For a few months I've been using it exclusively at home, without having the need to dual-boot Windows. Even though I've wanted to get a MacBook Pro for the last couple of years, I've started to change my mind because Ubuntu simply rocks. First of all, it's really fast. My personal laptop is 5 years old and Ubuntu seems to be more reliable and a lot faster than Windows. Moreover, I've seen benchmarks suggesting that for some applications it's also faster than OS X.

I've tried out different desktop environments but I'm sticking with Unity for now. It's really simple to use and clean. I do most of my work in the terminal anyways. If you guys want to make Unity look better, I suggest trying out the Numix themes and icon packs. They change Unity almost completely and make it look a lot stylish. It also works in Gnome3.

In what regards terminal emulators, I recommend Terminator. I use it because it allows arranging terminals in grids, which comes in handy especially at work. It is based on Gnome Terminal.


I switched from Linux to OS X around 2004/2005 and switched back again late 2011-ish. I use Fedora with Cinnamon DE currently.

I loathed the OS X interface I really only used it because the Macbok Pro was a really good piece of hardware (I still think the MBP's trackpad was the best I've used on a laptop) and OS X was "Unix enough" for me to put up with the short commings - adding an app store icon to the dock after an update (without asking me) was the straw that finally made me quit - My laptop is not a phone Apple.

Linux's strength and it's weakness is the myriad of choice it offers, there's enough flexability on offer such that you can usually get it setup how you'd like it, the downside is you may need to spend time configuring it to get it into this state.

Things like your terminal request - all I can say is don't feel obligated to use the distro defaults try a few different terminals until you find one your happy with. That's a good rule of thumb for all things linux - just because the distro defaults one way it doesn't mean you are obligated to adopt those defaults.


I really enjoy Gnome on Arch. I have a lot of experience with Linux (i.e. most of my life), but it's been getting significantly harder to destroy your system by updating. Just make sure you do everything through the repo.

I chose Arch because it is usually on the ball with new kernels. Ubuntu and Debian (I found) had many issues with newer hard ward, though any hardware a year or two old was usually supported.


Being an OS X user myself I would lie if I said the thought hadn't hit me to switch to another Unix or Unix-like OS. Most notable candidates for me were:

Elementary OS Looks great and Ubuntu based so there's a thriving community around it. Sort of.

Crunchbang Linux Looks interesting. Didn't look into it much more than just click around on their website.

FreeBSD My weapon of choice for servers. I bed it'd make a mean desktop but there'd surely be a lot of work to set things up.

When I'm on Linux desktops the things I miss the most are Safari, Xcode, Alfred and Adobe Photoshop. Not to mention the polish. The things I miss in OS X are a proper volume manager (like the one in Windows where you can control the volume of individual applications or mute them), case sensitive file system (I know you can set this but I don't because of legacy script compatability) and an out of the box package manager/port tree. Yeah I use brew but the volume thing is driving me nuts having gone from Windows.


> Crunchbang Linux looks interesting...

I thought I should point out the core developer of Crunchbang linux has ceased development[0].

0) http://crunchbang.org/forums/viewtopic.php?pid=416493#p41649...


This is true. There is also this:

https://crunchbangplusplus.org

Hopefully the OS is more stable than it's development.


I'm in the same boat, but I'm worried I won't find a music library manager as robust as iTunes. Most I've found don't have support for things like smart playlists and shuffle by groupings.


You can even change the unconfigurable lxterminal from lubuntu to use OS X keybindings. Run apt-get source lxterminal. Then change the bindings in src/lxterminal.h (change <CTRL><SHIFT>C to <ALT>C and the same change for V, for paste). Then run apt-source --commit to commit your change locally and finally dpkg-buildpackage -us -uc to build your modified lxterminal.

Edit. And change other keybindings in .config/openbox/lubuntu-rc.xml. For instance change keybind key="C-Left" for GoToDesktop left to get the same binding as in OS X.


For a terminal, you can give terminology a try: https://www.enlightenment.org/p.php?p=about/terminology


Wow, I had never heard of this but it's really cool. It comes with a couple of commands that are really impressive.

tycat can put an image inline in your terminal. tyls gives you an inline folder view with thumbnails that you can click and preview.

Feels like a thoroughly modern terminal emulator.


As an Alfred replacement check out Kupfer[1], it's got a number of plugins to interact with different applications I use. It's actually the reason I went searching for and found Alfred to replace the functionality on my Mac.

I haven't used iTerm on OS X, but Terminator[2] might be worth checking out as a Linux replacement.

1. http://engla.github.io/kupfer/

2. http://gnometerminator.blogspot.com/


I want to add that if person wants a very OS X like desktop for GNU/Linux then Étoilé DE is very much the thing.

http://etoileos.com/etoile/

Only downside is that it isn't very mature yet. And in fact is in a need of developers. Alternative to Étoilé is the Window Maker with GNUStep and GWorkspace but it isn't everybody's cup of tea.

http://www.gnu.org/software/gnustep/


I use open box and I have

custom key bindings. Anything that I want.

About alfred: I have this script from crunchbang that uses dmenu and then displays and allows you to search for a binary to run. Also just alt+f3 in most DEs will open a dialog that you can run binaries/scripts in your path with.

If what you want is something more along the lines of a terminal where you can see the output, there's extensions for most DEs where a terminal will be opened on certain key combination and place it somewhere and hide it immediately when you're done with it.


I installed Linux Mint on a laptop a couple weeks ago and I used it about 8? hours over all before it had a kernel panic that screwed up its boot sequence (my diagnosis got as far as MDM or upstart itself being the culprit but I wasn't exactly gonna continue using it). I went to Arch instead--the setup time might look a bit tedious but I think it's invaluable in demystifying how to make linux behave the way you want it, rather than trying to prod a distro into something workable for you


Unity isn't the only Dekstop in Ubuntu you have most if not all known WM & Desktop available. KDE is the prefered Desktop for its polish and lot settings, but never used it myself. I use GNOME3, it works. It has extensions written in JS and a two "Alfred" like GUI CLI (one with search and another without).

emacs: you can probably import OS X version settings.

iTerm2: I don't have that problem in gnome's terminal that said it's kind of limited, screen & tmux are much more powerful.


with "emacs" OP refers to an OSX feature where every text field / input box in every app / dialog of the system supports the basic emacs bindings. So whether you're in Safari, Chrome, Numbers, Office, TextEdit, Photodesk, or any other app, the basic emacs movements commands always work (apparently the original NeXT hackers were big emacs fans).

I'm running various Linux distributions in a VM from time to time, and this is something I really miss. I'm not sure if Elementary OS maybe has this though, never tested it.


gsettings set org.gnome.desktop.interface gtk-key-theme "Emacs"

Yeah, the fact that there isn't UI for this basic pref says a lot about the relationship between desktop environments and "power users"...

(source: http://askubuntu.com/questions/181532/emacs-keybindings-in-u...)


I just tried that in Elementary and it doesn't work :(

I'm sure I'll find a way, but I'm starting to realize that the Cocoa Text System is pretty great compared to what other OSes have.


What didn't work about it? I have this in my .gtkrc-2.0:

    gtk-key-theme-name="Emacs"
And this in ~/.config/gtk-3.0/settings.ini:

    [Settings]
    gtk-key-theme-name = Emacs
If those settings appear in both places, after restarting a GTK+ application the bindings should just work. They actually work better than in OS X because you're free to use the Alt/Meta shortcuts to skip words without reaching for the cursor keys.

There are a couple of GTK+ applications that annoyingly override the shortcuts, like Pidgin for example (which binds C-w to "close window").


Gnome3 is also nice http://i.imgur.com/8ZxohmT.png :)

[x] - I yet to have see terminal emulator shipped with ubuntu that doesn't wrap text

[x] - Gnome 3 has Alfred like search over files, apps, windows... also mutate (https://github.com/qdore/Mutate)


As a side note, I could never bring myself to like Ubuntu's default font. To my eyes it always looked nothing short of hideous, I wonder if I'm the only one.


What are you using to browse HN? I would love to have a "fold" option for browsing comment threads.



For compatibility, I use Ubuntu but without Unity. I've switched Unity out for i3wm[0]. I've set up Terminator[1] to handle multiple profiles and to handle Copy and Paste better.

[0]: https://i3wm.org/ [1]: https://launchpad.net/terminator


I recommend Xubuntu. It's Ubuntu but with XFCE instead of the 1GB of RAM sucking Unity UI.

I recently switched to Xubuntu from Linux Mint XFCE. The Linux Mint distros are a bit nicer, but they do not support dist-upgrade so you have to do a complete reinstall when you want to upgrade to the next version. Xubuntu supports dist-upgrade.


I second Xubuntu. Out of the box, it works great, looks good, and Ubuntu has very good hardware support these days (trackpads with multi-finger scrolling works, for instance).

Kubuntu is ok, but sometimes terribly laggy (like when logging in).


For a terminal on Linux: use terminator..

http://gnometerminator.blogspot.co.at/p/introduction.html

Alfred: use Kupfer on Linux.

Linux Mint: gets my vote! Also consider one of the non-Unity versions of Ubuntu.. I love my UbuntuStudio rig.


Try Manjaro. It's my favorite distro and has amazing driver compatibility out of the box. It's also based on Arch Linux so there are rolling updates and no need to worry about release cycles breaking your machine. It's essentially the "Ubuntu" of Arch Linux


Currently dual booting Ubuntu and Windows at home to get my feet wet with Linux. At work I use a Mac and the closest thing I've found to Quicksilver or Alfred is Mutate.

https://github.com/qdore/Mutate


A Linux OSX clone => http://elementary.io/ . You can also find a new distro by using http://distrowatch.com/


So I wanted to warn you about the sad state of Linux Wi-Fi [1], but Alas! That link is rotten!

[1] - https://news.ycombinator.com/item?id=8075880


While I never used Alfred, it sounds like rofi[0] might be for you (if you like the minimalistic design).

[0] https://davedavenport.github.io/rofi/


I'm not sure how well it compares to iTerm2, but check out terminator.


Yeah, Terminator seems to be the most feature-implemented GUI terminal so far.


My personal favourite terminal on Linux is yakuake (global hotkey for bringing the window to the foreground is really useful).


On the same line you have Tilda https://github.com/lanoxx/tilda

I used the three of them and always ended using Tilda. Be sure to install 1.2.2 (from the gh repo) so you can even use Solarized colors (the one on the ubuntu was 1.2.1 last time I checked).

Xfce's default terminal emulator also has this hotkey feature now.


personally I prefer Linux on a Lenovo hands down.. (calm down fan boys.. it's a personal preference). But the Mac has some nice things.. I do like the UI of the Mac better than Unity.. though I hate the menu bar only showing on one screen.. always had to tinker with the Mac to get that on multiple screens.. the biggest thing I need from the Mac isn't really Apple's.. Its M$ Office.. Every day at work I get a spreadsheet or a word doc that just doesn't quite work in Libreoffice..


I use Mint 17 Mate Edition--Mate is the fork of Gnome 2. It just works and gives me a familiar interface.

You might want to check out guake as a terminal and gnome do as a quicksilver replacement.


Good discussion! I just started using Elementary on an old spare system to try it out and I like it so far. Going to try all the cool utilities people have recommended. Thanks!


About iTerm, I have found this one: http://finalterm.org I have never tried it but it seems great.


It's pretty buggy and slow (for me at least). There's a 50ms delay after a keystroke. Kind of frustrating.


"Final Term is in heavy development and neither stable nor feature complete!"


I know. I shared at least to keep an eye on the project.


gnome-terminal has text wrapping

https://github.com/emgram769/lighthouse is like alfred


Please, linux users, mention your experience with high-res displays since many of us would like to move to a 4k display in the near future.


I'm not running a 4K display on my laptop but a QHD+ HiDPI display (with a resolution of 3200x1800).

I've settled on Debian Jessie(testing) with the Cinnamon desktop environment and Opera Beta as my web-browser, it all works perfectly and the clarity is wonderful and couldn't imagine ever using a non-HiDPI screen again.


It's absolutely terrible. I have used 4K and 5K displays in the last year on Windows, OS X, and Linux and the only OS that currently handles these well is OS X.

In general, handling high resolution displays requires a really tightly bound ecosystem so scaling works on all applications. Linux makes it immediately clear what happens when this is not the case. 14.04 is totally unusable because you have to either change the system fonts to be huge or scale text within every application individually, if the application even provides the ability to do that at all.


The latest version of Gnome, 1.4, detects high res displays out of the box and scales everything automatically (except for applications that don't use GTK3, like Chrome, but Firefox with the Gnome theme scales well).


Tried Hi res on a Dell M3800, Gnome works well, kde doesn't, and for programs, chrome does not render well. I don't know for other programs


regarding the terminal, ATM I just use terminology [0] on one machine and yakuake [1] on the other one I usually use.

[0] https://www.enlightenment.org/p.php?p=about/terminology [1] https://yakuake.kde.org/


Could anyone that did Youtube videos for a living live with only Linux? Is there a very good solution for recording your screen?


I've made a number of Minecraft videos on linux using ffmpeg and editing using Kdenlive. If you google for linux screen recording there's a bunch of good options, including much friendlier options than a long ffmpeg command.


Mint has been my choice. I'm not 100% happy with it, but its the best I've found so far for a desktop experience.


Edit: Even had a few Steam games transfer over, which was cool. I've had some issues with Java support, but most people wouldn't care about that, and fairly random, as in the Toolbar support. I don't particularly trust who owns the distro, and if someone pointed me at a better one, that is wholly open source, would change in a flash, but I've liked it so far.


Ubuntu lost me with me the abortive Unity interface, and sending my queries back to base.


OSX => Gentoo, iTerm2 => gnome-terminal, Alfred => mlocate / window-manager command shortcut.


Can anyone explain why OSX apps don't have a maximize button? The full screen button is just terrible.


Hold 'alt' when you click the green full-screen button and it'll maximize.


It still doesn't actually maximize, at least for chrome. It just expands vertically not horizontally. I also don't understand why fullscreen is the default. I've never once, ever, actually wanted something to go full screen.


Press alt while clicking the green button.

In general I don't like the window management of OS X - it's a great OS that is (in my mind) mostly let down by bloat ( system apps that take all your CPU or memory) and window management.


You can also just double click on the title bar.


I think you have to opt-in for that behaviour now.


> I'd really love to keep my OS X-style keybindings. It's really frustrating for me to be on Windows and try to paste the system clipboard into a command line. What is it again? Shift-Insert or Control-Insert? And how do I open a new terminal window? Alt-F2?

That should be possible, but it's probably going to require quite a bit of manual fiddling in order to get things to work with the Command key instead of Control for CUA-style bindings. KDE makes this pretty easy, though somewhat tedious through the GUI; all the keyboard shortcuts are managed through the "Shortcuts and Gestures" section of KDE's System Settings.

> The above also goes for Emacs text editing bindings (OS X comes with C-p, C-n, C-k, C-o, C-v, etc.). I want them around too.

Should also be possible through the above-mentioned settings system if you're using KDE. Can't speak for other desktop environments, alas.

> iTerm2. I was sure this wouldn't be a problem, but after looking more into it, apparently ... it is. I've heard that some emulators can't even wrap text properly. I'd also like if it could support profile switching via escape code and other nice things like that.

Konsole (also with KDE) should work nicely for your purposes, though maybe I'm misunderstanding what you're referring to about text wrapping and profile switching (the behavior between iTerm and Konsole regarding text wrapping seems to be identical from what I can tell by a cursory side-by-side check, and Konsole does support multiple profiles).

> Alfred. Not so much for searching for applications, more for having a mini-"command line" that I can use from anywhere.

This depends on what functionality from Alfred you're hoping to still have. KDE's search functionality is pretty comprehensive if that's what you're looking for. It'll also launch programs, even if they're not applications which show up in KDE's menus (i.e. if you type in `xterm`, you'll get a "Run xterm" option that'll - you guessed it - launch xterm).

> Another thing is compatibility. Of course if that was my highest priority, I'd go with Ubuntu and Unity. It seems like more and more things are starting to say "Linux" when they mean "stock Ubuntu". I cannot stand Unity, so I'm thinking Linux Mint. I'm also giving Elementary OS a try in a VM right now, so we'll see how that goes.

Given the above, it sounds like (to me) KDE's going to be a pretty good fit for you. Not only can you customize it to your heart's content to match what you're used to with OS X (and then some), but it's also one of the more full-featured desktop environments.

My normal go-tos for KDE-based distros are openSUSE and Slackware. If you're new to GNU/Linux, openSUSE would be better, but if you already have some server-side GNU/Linux experience (or are very comfortable with the internals of Unix-like operating systems - which seems to be the case if you're dabbling in trying to tweak a Unix as opinionated as OS X), Slackware would be a fun choice (and an excellent learning experience; the common adage - "if you use a Linux distro, you'll learn that distro; if you use Slackware, you'll learn Linux" - is pretty true in a lot of cases).

That said, if compatibility with Ubuntu is your priority, I would recommend Kubuntu, which is literally Ubuntu with KDE instead of Unity. That was my daily driver for awhile before I switched to openSUSE and Slackware, and it worked well.

There's also PC-BSD if you'd rather go with a BSD instead of a Linux. It's definitely the best choice for a desktop-oriented BSD, and it ships with KDE (if I remember right). I haven't tried using it in a long time, though (I usually stick to OpenBSD for my own BSD needs).


I'm a Mac user who half switched to Linux. I have a linux desktop and a Macbook pro running Yosemite. My transition was not terribly difficult. I use ZSH and all the terminal emulators I've tried (Stock Crunchbang, Ubuntu, LXDE on Ras-pi and xfce terminals, along with xterm, and my current favorite urxvt) support emacs keybindings. I'm pretty sure thats a per shell thing though, as I switched ZSH to Vi keybindings with no problem. If you don't use TMUX or Screen, it's not hard to get the normal copy and paste bindings working in any of the emulators I mentioned. With the exception of xterm and urxvt, ctrl-c and ctrl-v usually just work. In xterm and urxvt, you have a little bit of work to do to configure the keybindings, but once that's done, it just works. I like urxvt so much that I'm actually looking to replace iterm2 with something like it. x11.app will run urxvt, but since x is it's own windowing system, it doesn't work with my window management on OS X. Bummer.

When I use a desktop environment my favorite desktop environment is xfce, although I do like Elementary OS. However, normally I'm not running a DE. I started my Linux journey dual booting Ubuntu 12.04 and Crunchbang. Eventually, due to some dumb mistake with apt while trying to install a package on Crunchbang (#!), I reinstalled #! and wiped out Ubuntu. (I to have a hatred for Unity) Eventually, I discovered the Awesome window manager. I haven't looked back since. Awesome is completely configurable in Lua, so any key binding you want is possible. I have super+enter (super is the windows key on my keyboard) set to open a terminal, super+w bound to open my browser, and several other keyboard shortcuts like that. Also, Awesome 3+ has a task runner like Alfred built in. I have it bound to Ctrl+space.

I'm still using Awesome, but now I'm on Arch. I didn't like how slow Debian stable (the base for #!) updated, so I switched to Manjaro and loved it, but I ran into a problem where I couldn't install a library for some software I wanted. (I probably just didn't have the right repositories configured, but I'll never know.) I'd been considering Arch for a while, so I did a practice install in VirtualBox. It wasn't terribly difficult with the tutorial I found on Youtube. After getting everything working in Virtualbox. I did the install on my computer.

I think I've installed Arch on my machine twice now. One of those times I used pacman to generate a list of the packages I had on one install, saved it to a thumb drive, then wrote a python script to parse the list and install the software I was missing. I set the script lose and got in the shower. When I got out, everything was installed.

Last thing, the Arch wiki is an invaluable resource for all things Linux. Sure, the package management commands are wrong, but the configuration instructions for things aren't. Even if the files are in a different place, the Arch wiki gives you enough info that you should be able to run find or grep in one of the parent directories and find what you're looking for.

https://wiki.archlinux.org/index.php/Main_page


See you in a few weeks.


Based on your complaints, it sounds to me like OSX would be perfect for you.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: