understandable linux tips, tricks and tutorials

I have been a Linux user for over 10 years. I have used it exclusively on my home systems since that time and although it was a struggle at the beginning, I haven’t had any desire to use any other operating system … until now. Recently I purchased a MacBook Pro. Principally because I like the hardware, and can put Linux on it. However, it has also given me the opportunity to use OSX. In fact I’ve been using OSX quite a lot – given I’ve paid for it, I want to really see how it works. However, in the course of using it, I’ve come across a number of features of Linux and the KDE desktop that I greatly miss. If you think I’m wrong on any of the items below, please let me know – I’d love to be able to fill in some of the gaps I’ve found. This is my list:

1. A Package Manager

Package management is a central feature of most Linux distributions. Whether it be apt, rpm, emerge, packman or the myriad of other package managers, the basic premise is the same – the ability to update every piece of software on your system from a central application, so that everything is up to date and secure. Furthermore, with most package managers, software dependencies are automatically resolved, and finding new software is a simple matter of searching in the package manager – no need to trawl download sites online, or worse still go to a bricks and mortar shop to buy it in a box.

Whilst OSX has a software updater, this only works with respect to Apple software. Non-Apple software gets no such love. There is an application called AppFresh which purports to provide a method to update all software from one central application, however, it still does not update every package on your system, and does not have the polish or automation of the Linux package managers. The benefits of proper package management are IMHO seriously underrated on the Linux platform.

2. KIO Slaves

KIO Slaves are a framework on the KDE desktop that allows access to protocols and resources so that they, in effect, look like a file system to KDE applications. The power of this is that these resources and protocols become available to KDE applications as if they are local files. KIO slaves allow you to view, access and manipulate file systems over FTP, HTTP, SSH, NFS, SMB, SFTP and Webdav as if they’re local file systems. So in the KDE file manager, you can open a remote FTP server and copy files to a separate server accessed via SSH directly without having to download the file to the local machine. This power becomes more pervasive because it’s built into the file open/save dialog in KDE. This means I can open or save a file remotely directly from or to the application I want to use it in. Almost like cloud computing, but without the hype.

Whilst you can access remote SMB shares in the Mac’s finder application, as far as I can tell, access to files via other protocols is not possible. To me this is a significant inconvenience when I’m working with a number of files over a number of machines.

3. Kwin

Kwin is the window manager for the KDE Desktop. Whilst Windows or Mac users may wonder why you would even notice the window manager, let alone have a preference for different ones, for Linux users where there are a large number of window managers from the very basic to very complicated, having a window manager preference is quite natural. A window manager does what it says – manages how the windows appear on the desktop. They allow you to switch between windows, close, open and maximise them and move them around the desktop. There are a number of features of Kwin that I miss on Mac:

Keep Above Other Windows

One cool feature of Kwin is the ability to specify that a particular window should sit above all the other windows, regardless of which window has focus. Quite often I’ll be working on a document, but need to reference material in another window. It is useful to keep the window with the reference material above the window I’m working in, so that I can easily reference it. Additionally, I often watch video while I’m doing other tasks on my machine, and keeping the video window above others allows me to keep watching the video while doing other tasks in the background.

Desktop Grid

The desktop grid is Kwin’s implementation of “spaces” on the Mac. Whilst Linux desktops have had virtual desktops for years, this concept has only recently arrived on Mac’s. The advantage I see of Kwin’s implementation of this concept is that it combines both spaces and expose in one. So when the grid is activated, not only does it zoom out and show all the virtual desktops, it also applies an expose like function on each desktop. This allows you to see every application that is running on every desktop all at once. This can be very useful if you have a number of applications doing various things, and you want to watch them all at the same time. See the following video as an example:

embedded by Embedded Video

YouTube link to HD version 

4. Middle Click Copy/Paste

This is a function I miss on a daily basis. In Linux, you can select any text with a mouse, and then paste it into any other application simply with a middle click of the mouse. No right click to pull up a copy/paste menu, and no keyboard short cuts. Just select, then click very simple and it works universally across every application, as it is built into the X window system.

5. Kmail

Kmail is a seriously underrated mail client. It is exceptionally powerful, but with an incredibly clean and simple interface. Unfortunately, Apple’s mail.app and other email clients on Mac don’t quite match its breadth of features. The main frustration I had with mail.app is its minimal support of the imap protocol. With no ability to specify which mail folders are subscribed to, this is a big problem. I have a number of folders that messages get sorted into, and I need to be able to subscribe to different ones depending on which machine I’m using. For me this is a significant problem. In addition, Kmail has great flexibility in terms of how the message list and viewing pane are laid out. This is a great usability feature that I have yet to see replicated on any mail client. The final feature of kmail that I use constantly is its inline search function. It finds messages as you type the search terms, and does so almost instantly. Again, I have been unable to find an equal in any mail client.

Conclusion

Whilst I am pleasantly surprised at the usability of Mac OSX, and my ability to configure it to my needs using a number of third party apps, I still struggle without some of the great usability features of the Linux, and more particularly, the KDE desktop. If anyone can point me in the direction of applications that can provide similar features, I’d be greatful. Also, if anyone can point me in the direction of a Linux distribution that works well on recent MacBook Pros, that would also be greatly appreciated.

 

51 Comments
  1. I don’t know about the others but for #4 if you us a Mac laptop with multitouch I suggest you download BetterTouchTool (http://blog.boastr.net/). It’ll allow you to totally customize your touchpad.

  2. So Kwin desktop Grid does EXACTLY what spaces does?
    You get the same kind of a zoom out view on Spaces, and you can use expose while it’s activated.

  3. I’m not sure this would help but have you looked at Fink for OS X?

  4. The OS X Finder natively supports all of the protocols in #2 (except for SSH, which can be added with MacFUSE+SSHFS). You can connect using the Go -> Connect to Server… command in Finder.

  5. A few thoughts:

    1. Personally I find package managers to be a pain. Maybe I simply never mastered them. Sometimes what I want to install isn’t available at all, and sometimes it’s the wrong or old version. Also adding new repositories is overly complicated. I think downloading a pre-packaged app, that updates itself, is much easier. I do agree however that a global updating system would be good.

    2. There are a number of third party apps that allow mounting of different types of connections eg. Transmit for FTP/SFTP connections.

    4. I kinda miss the chord click to paste from a version of linux I used to use at Uni 15 years ago

    5. Try using Apple Mail without folders. Get all mail. You can use search to find stuff quickly, eg type “from:bob firefox” to find all messages that mention firefox from bob. I’ve got over 50,000 emails and it takes <1 second for complex searches, and most of it is instant as I type.

  6. Re #1, have you tried MacPorts? See http://macports.org for more details. It’s quite comprehensive.

  7. Regarding #3 (!), try http://infinite-labs.net/afloat/ for keep above all windows, and you can trigger expose while viewing spaces for the desktop grid effect.

    I think that’s it from me =) If you have any questions, feel free to give me a shout, I’d be happy to help you out.

    By the way, I recently put together this list of software for a friend (and web developer) who just got an MBP. You may find something useful.

    http://www.cocoatech.com/
    http://www.stereopsis.com/flux/
    http://www.fngtps.com/passenger-preference-pane
    http://onnati.net/apptrap/
    http://www.macports.org/
    http://cyberduck.ch/
    http://code.google.com/p/macfuse/
    http://jumpcut.sourceforge.net/
    http://github.com/beheadedmyway/gity

  8. If you’re missing the convenience of a package manager…

    OSX has a FreeBSD variant called “Darwin” as its underpinning. BSD uses a package management system called “ports” — there is an official DarwinPorts repository at opendarwin.org.

  9. The things that stood out for me in the year or so I spent on Macs (after 8 years on Linux) was the lack of choice and the price of Mac apps. I was so used to having all those apps available in Synaptic, for free, that it was a shock to see price tags all over the place and what seemed like a limited selection of available applications (even if many of those available were of a reasonably high quality).
    Macs are quite severely locked down when compared to Linux. Often this is a design choice and may even be the correct design choice, but after years of more or less total control, it felt limiting.
    I sold all my Macs at the beginning of the summer and am joyfully back with Linux. It felt (and still does) like a breath of fresh air.

    • I have been pleasantly surprised by the number of free (as in beer) apps for Mac. A lot more than I thought there would be, and a number of the apps I use on linux are also available, such as chrome, openoffice and gimp.

  10. Been several years since I used KDE, but I also miss the KIO Slaves.

    Have a look at TotalFinder to eliminate a lot of the pain associated with Finder. Still not as flexible as konqueror, but definitely an improvement (add tabs, etc).

    SizeUp is a non-free app that does some nifty things to improve desktop window management, spaces stuff.

    Package management is a sore spot, but if you like gentoo, then you will sorta like macports, fink, or homebrew. I use macports, but I know others who prefer homebrew.

  11. Finder can handle most of those protocols transparently. There’s a bit of monkey work for NFS, but it does samba, FTP, and Webdav on its own. You can get sshfs working or use a tool like Transmit 4 or ExpanDrive for SSH/SFTP (sshfs is the free one, the others cost but have a little more polish).

    I’m more or less inclined to agree with you on the other points. Package management on OS X sucks huge. I like things like Fink that give me package management for the under-the-hood bolts that I use and like to keep updated, but for random apps.. yeah, it’s a bit of a maintenance nightmare.

  12. Are you sure you wanted to give exactly this title to your article? Just because the content says it the other way round.

    • Huh?

      • I think he reads your title as having the meaning “5 things I miss *on* Linux when using OSX” – in other words, you notice that Linux lacks 5 things when you are using OSX

        I must admit, I can read it either way, so I think the title is ambiguous.

  13. I agree that KIO slaves are hard to beat. You can do some of that using mac fuse, but it’s no where near as nicely integrated or as feature rich. I’ve been a Mac user for years and have owned several. But my computer at work still runs Linux!

  14. I completely agree with the first. The package manager system is THE most understated feature of Linux. Being able to update (or NOT update) EVERYTHING through a single application/command is wonderful.

  15. Have a look at MacFUSE for a KIO replacement/substitute.

    A.

  16. Much of what you’re mentioning is KDE-specific… you do know that you can in theory run KDE4 on non-Linux platforms, right?

    • From the mac.kde.org page, kde4 on mac is still considered “beta”.

  17. OSX Window manager is just not a very mature implementation of what the X Window System has pretty much done right. Sliding a window from Space A to the right into B, for instance, brings the window into B from the wrong side. There’s also no way to designate an application that should appear in all windows. Resizing windows with only a bottom right grab area is also just plain wrong. Compared to using Enlightenment 10 years ago, it feels like such a giant step backwards… and there’s no alternative if you don’t like it!

  18. I wiling to trade my actual system for a macbook pro one day soon.. I have been working with Arch Linux for a couple of years now.. And noticed that some ppl in the community have installed Arch Linux in their mac’s and all seems to work quite well..
    But I’m not sure if i’m ready to make the transition to the apple world..

  19. There is a package manager for OSX, called macports. It’s not an official one, but rather a community-managed third party system. Sheesh, I’m not even a mac user and I knew that :P

  20. For package management you can use MacPorts or fink, not nearly as complete as pacman/apt/etc. but still useful..

  21. I’ve used desktop Linux since late 1993. Last year, I bought a Macbook Pro and switched over to OSX as my primary desktop. I read your article with interest, and I have some comments. But first let me say that I’ve been a Gnome user primarily for the last 10 years, so some of the comparisons with KDE are over my head.

    Package managers – yup. That such systems are possible is down to the nature of FL/OSS. There is a “port” system for OS/X, based on the FreeBSD ports collection (http://www.macports.org) but that doesn’t cover commercial desktop applications. Anyway, ports alone don’t substitute for a package manager.

    KIO slaves look cool. I’ve seen many schemes that try to abstract out lower level communications methods into some high level metaphor, such as file systems. The WWW was conceived to do the very same thing. In this case though, I think the feature would mainly be useful for geeks like me. I know a standard response from Linux enthusiasts to that to that kind of objection is to give counter examples showing how unsophisticated users might benefit from a particular feature. But however plausible, these use cases tend to feel contrived to me. And they often don’t match up with the actual behavior of naive users I’ve observed over a long career in IT.

    KWin – keep above is cool. I miss that on OS/X too. The grid feature looks wonderful, but I personally don’t use multiple desktops. (I first ran into these on CDE – the common desktop environment – in the late 80s.) They just don’t match the way I work very well. YMMV.

    X11 style copy/paste. This has been in X since at least X10. It’s the first window based copy/paste I ever used. I swore by it and used it for years. It is much quicker than select/cmd-c/cmd-v. But there is one feature the latter system has that overcomes a weakness of the former. Since selection does not auto-copy, one can select text to be replaced. With X you have to paste, then select the unwanted text and delete it. This last action also has the side effect of replacing the contents of the copy buffer with the unwanted text, so if you want to do multiple pastes of the same text, you have to jump through hoops.

    Kmail – can’t comment, I use gmail :)

    I have a long list of OSX features I miss in Linux. They mostly all come down to benefits of the fascist regime controlling the interaction of applications with the OS in general, and the desktop environment in particular. The consistency this provides the user when moving from application to application is invaluable. There are fewer things to learn when you sit down with a new app. This touches on my beef against most Linux desktop apps, that they are hard to learn for newbs. Inconsistent interfaces lead to confusion and frustration. It doesn’t take a lot of that for a user to give up.

    Since Apple’s fascist regime has an impeccable sense of style and a monomaniacal dedication to understanding users, plus a brilliant capacity to find radically simple solutions to complex problems, the fact that you have lost some of your freedom while using a Mac is less noticeable than it might otherwise be.

  22. For a package manager, please use macports. It is similar to (free)bsd ports and gentoo (linux) portage.

  23. uhh…

    ever heard of macports?
    macfuse?
    spaces?

    surely you jest fine sir

  24. Haven’t tested it myself, but it sounds as if you are looking for this: http://mac.kde.org/

    • Still beta, however, I might look at individual kde components via macports.

  25. There are a couple of third-party package managers for OS X that I’m aware of, namely MacPorts (which is apparently similar to the BSD Ports system) and Fink (which apparently works more like apt-get). Personally I haven’t used either as I don’t like the idea of a third-party package manager that doesn’t come integrated with the OS, and I don’t think it allows you to keep the whole OS up-to-date in the same way apt does.
    Personally, after using OS X as my main OS for a couple of years I’m slowly moving back towards Linux because OS X just isn’t as flexible or customisable. Ubuntu offers an experience that I find every bit as easy to use as OS X (in fact, it’s probably easier for me as I install a lot of stuff via apt-get that on a Mac would need compiling from source), but without having to make the kind of compromises in terms of power and customisability that it requires.

  26. The Mac keyboard does not have { [ keys. Most would say there are shortcut keys, but it’s quite a pain in the neck for such a basic need.

    The local network machine name is forcedfully a Mac imposed pattern : .local, and cannot be a universal .domain.tld pattern.

    When browsing through Application directories, we cannot straight away enter the app’s install tree, we have to right-click in finder and open the installation tree in another finder window. This is quite embarassing from JAVA file dialog, we have t set the initial dialog dir to /Applications/app.app/Contents or the final user won’t be able to go beyond /Applications/app.app

    Bootcamp is not Linux friendly, though many say it’s easy to install Linux side by side Mac OSX.

    The default install does not separate system and user data on different partitions.

    Mac is very user-friendly, I don’t find it developper-friendly however.

  27. I have to say, after demoing OS X for a while, as a KDE 4 user, there is a lot to desire. I know some people like the flat looks of the menus and the cut off edges, but in this respect I can only say that KDE 4.5 kills Aero and Aqua in their current states as far as physical beauty integrated with simple, easy to follow design.

    So, I’ve never really been around for the times when Linux wasn’t prettier than OS X, so I don’t know why people keep saying OS X looks better. I know it’s a matter of opinion, but Linux has a different DE for whatever it is you find better, the gloss or the flat. So really, there’s no argument there- if it looks as good as a Mac or better, just stop talking about the looks and get to the beef.

    KDE 4 lets you grab any part of the window not in use, not just the top, like OS X.

    You can still Alt+Click in KDE 4, which is crucial once you have it.

    CUBE! WOBBLIES! C’mon, they’re not bad, they can have their uses and make your computer feel more natural.

    These are all KDE 4 things that are about the interface that are beefy. The beef you get with the OS itself, with package management, security, rendering engines, speed, etc… seriously, KDE 4 is just so modern it makes me sweat from the eyes.

    Think about it- Aqua is constantly developed, but it hasn’t changed much over the past four years up to Snow Leopard.

    KDE 4 is brand new in terms of software outside of open source. Like, it’s just so fresh, so useful, so GOOD in so many ways. It’s just.. augh.

    Since I take full advantage of the software given to me, it makes OS X look like a sad rip-off, to be honest. But I still really like it, and acknowledge its strengths.

    I’m fine with the differences, so long as they’re effective. And some things in OS X could be far more intuitive- I’m not talking about things that I’m used to, but things that just make sense to simplify things.

    But really, enough ranting- OS X and Linux are equals at least, I would say. If you gave Linux Adobe, Steam, and maybe Final Cut Pro, people would scarce imagine a good reason to use OS X.

  28. You can fix all of this by just selling the Apple machine and buying something with standard hardware and installing Debian and KDE, and use the remaining money for a trip around the world perhaps :D

  29. About #3, I really do not see differences:

    http://www.youtube.com/watch?v=c7MHup6kXbU

    You can also decide the layout you like (row, column, matrix…).

    @Andy Pierce
    You can assign an application to open and be visible to any combination of spaces you want, it’s done through the spaces control panel.

  30. Nice article, although Archlinux’s package manager is pacman not packman ;)

  31. I just installed Arch Linux with KDE on my Macbook (an old non-pro version, but it installed without any trouble or tweaking whatsoever, I was quite amazed =D). My best decision in a loong time…

    I bought a Macbook mostly because I’ve never had one before and had read that many developers really liked the things; but I kept ketting disappointed by how much work and tweaking it took to get a developer environment set up: you have to register to install XCode, which loads up your computer with a whole bunch of Apple IDE’s you’re never going to use, then you have to install MacPorts and compile everything yourself (Mac’s are almost identical, why didn’t they go with a compiled package system instead of a ports system??), then you have a huge mess of two different paths depending on whether you want the Apple versions of Macports versions of stuff, making sure you use gsed instead of the builtin sed (which chokes if you give it anything too complex), and don’t even think of running fink along with macports or your whole tree will blow up…haven’t tried homebrew yet, maybe it’ll eventually be a bit nicer to work with, who knows. Macports is not a Mac package manager, it just helps you compile the non-Mac software, you still end up having to update your software through twenty different methods.

    Now I haven’t tried Snow Leopard, but Spaces in Leopard was a joke. The only thing I found it useful for was as a mouseless way of showing the desktop by switching to an unused Space. And somehow, not being able to resize a window with the upper edge is enormously annoying, even though it’s a minor point.

    Basically, I ended up spending so much time configuring my Macbook to be like Linux that there was no reason not to install Linux.

    However, not to be completely one-sided, I do miss one thing from the Mac: Skim.app. Wonderful PDF reader. Okular is OK, but not quite there yet wrt. notes-taking. Of course, being open-source, maybe someone will port Skim to KDE? :-)

  32. Linux and mac are both quasi-lame because neither one has a reliable mechanism for backing out a botched upgrade. I struggled with this for a while years ago and then moved to FreeBSD. cvsup-ing a different minor release level (forward or backward) was a breeze and the BSD folks seemed to make a lot fewer mistakes to begin with. Applications are handled pretty much just as easily.

    That’s Linux’s price for your being hip and leading edge. If you’re worried about super stability you get castigated for being “behind”, like CentOS does.
    Mac is just interested in leaking out improvements gradually so as to make it look like a big deal. You know as well as I do that “Spaces” was in unix more than a decade ago. Big deal. I’ve used my son’s 10.6 laptop a lot and I still find OS X to be clumsy and too mouse-centric. It gets in the way visually as well.

    All these posts are nonsense (this one too). Desktop Linux is not going to take over the world. almost everything that does not require visual real estate will be on a phone or pad of some type, and there Apple will rule along with contender Chrome. They will both be locked down to avoid the fiasco of android apps.

    Of course, Ubuntu will be there too, but it’s already well on its way to becoming the Windows of Linux. Eventually it will be the OS X of Linux.
    The Debians and Mandrakes and Slackwares and Yggdrasils of Linux will be an ignored or forgotten sector. They’ll be like the BSDs. Welcome to the club.

  33. Interesting perspective. I have used linux on my desktop since the beginning. But now I also have a Mac (Hackintosh, actually). From my point of view, I consider most of your complaints to be Mac advantages. I have no use for package managers. For example, I needed to install evtouch for a kiosk project. I managed to cut Ubuntu (a requirement of the customer) to a reasonably small size, but apt-get wanted to add 40MB of software, including a spell checker, along with the touch screen driver.

  34. I had a macbook back in the 12 inch era.
    It was pretty, it battery lasted long, it was sexy, it was faster than I tought it would be possible with so little RAM, and that glowing apple when using in public areas, oh, it was beautiful.
    But I do love package management. I hate windows updating and slowing the computer, I hate apps that try all the time to connect to the internet and try to tell you there is an update, and they ask you to upgrade exactly in the moment you are trying to speed things to start your presentation.
    And when you dislike what an Apple app do, yo can’t find alternatives. You sure can find good freeware for things that the mac does not do, but when it comes to photo management, music management, or you pay or you live with Apple software (at least, it was lke that).
    And Apple software don’t want you to look into the file system structure, so file browsing is not an option in these software. And freedom of choice, resizing windows, side panels, things like that, they don’t want you to be able to do.
    Apple is all about not giving many options, so all things look the same and you don’t fall in the “paradox of choice”. And that’s why you don’t have an iPhone with a physical keyboard, and you don’t have an option to resize your windows in the top bar.
    So I gave up MacOs. But that glowing apple… oh, I miss her…

  35. I am a Linux user for a long time and swtiched one of my boxes to Mac. You need to learn more about Mac before writing something like it.

  36. I like to move any window holding the ALT key. Don’t need to point to the titlebar; I can do it from any place of the window…

  37. I did not know about that copy paste! This will be very useful!

  38. I gave up OSX and went back for Linux.

    Now I’m home.
    Funny thing is that I miss nothing from OSX.

  39. lack of window manipulation options annoy me greatly about macosx.

    alt + left click drag n dropping windows without having to aim for the title bar is great.

  40. Seems like the better times are coming. OSX App Store is up
    to release in a few days. Probably would look like steam app
    manager. Should be great !

  41. be prepared shell out $ to get things from OSX App Store

  42. I highly recommend Homebrew.
    http://mxcl.github.com/homebrew/

Leave a Reply

Site last updated October 20, 2012 @ 12:53 pm; This content last updated September 10, 2010 @ 2:01 am