back | parent

Make KDE More Mac-Like

Some people are very used to the Mac OS interface and when they move to Linux it can be difficult to adapt to X11 conventions (although after having used X11 for quite a while now, I find X11 conventions addictive and cannot imagine how I ever got along without them; this, from a former Mac user). Of course, one of the things that Linux is most famous for is its ability to be customized. While it's difficult to copy every last detail of how a Mac works, if you can make yourself be happy with a Mac-inspired (rather than a Mac-cloned) desktop, then follow these steps...

Important A lot of these sorts of tutorials exist online, but most are for GNOME. This one is for KDE, specifically written by a Slackware user for a friend running Slackware. These steps are sometimes specific to Slackware but if you're flexible you can adapt them pretty easily to your own distro.

There are a lot of steps, but if you follow them then you'll end up with a pretty cool little desktop that looks and even acts somewhat familiar to you. And since you've gone through such lengths to get it, you'll be happy to know that you won't ever have to do it again (because on Linux you can just migrate your config files to another computer and all of your settings come with you) and you will have learned a lot about how KDE works and is configured, so you'll know where to go to make further customizations when you want them. In other words, trying to avoid the Linux way of doing things by disguising it as Mac OS will ultimately lead you toward doing things in a more efficient, personalized, customized, Linux way :-)

  1. Ground Zero

    Your first step should be do get KDE back to its default settings, more or less. The easiest way to do this is to open a terminal:

    $ mv ~/.kde ~/.kde-old

    Then log out and log back in.

    Important Do not move your .kde folder if you use Kmail or Kontact for email. If you use Thunderbird or you just use a web browser for email, you may do this safely.

  2. Double-Click

    First thing to do is to set KDE to require double-clicks instead of single clicks.

    Go to System Settings > Input Devices > Mouse. Look for the Icon section. Select the Double-click to open files and folders option.

    Click the Apply button to save the change.

  3. Window Buttons

    Now that you have a clean slate, all the screenshots will look more familiar to you. First, let's get the window borders fixed. To do this, go to System Settings > Workspace Appearance > Window Decorations

    Click the button labelled Get New Decorations....

    image: changing window decoration

    In the window that appears, do a search for OS X Aurorae and install the result. Then close the Get New Decorations... window.

    Scroll through the list of available decorations and click on the new OS X Aurorae theme you just installed. If you do not see it in the list, close System Settings and re-open it so it will load in the new themes.

  4. Window Button Placement

    Now you should have window borders that look Mac-like, but the buttons are in the wrong positions. To fix this, go back to System Settings > Workspace Appearance > Window Decorations and click on the Configure Buttons button.

    Another new window appears. Uncheck the Show window button tooltips option, and Check the Use custom titlebar button positions option.

    image: changing widget shapes

    In the layout area, drag the close/minimize/maximize buttons to their correct places on the left. I get read of the Question Mark and "H" (those are just space holders) altogether, but I leave the Plus Sign and Menu buttons on the right. Mac doesn't have these buttons, but frankly they come in handy quite often and we may as well benefit from Linux flexibility.

    Click the OK button to close the button window, and then click the Apply button to actually implement the changes.

  5. Colour

    Notice that there's an unsettling break from the Mac titlebar of a window and the actual contents of that Window. Let's smooth that out by going to System Settings > Application Appearance > Colors.

    Feel free to have a look around in the different pre-set colour schemes. I like the Chrome theme. Whatever you choose, click the Apply button to set the colours. Then you'll want to smooth out this window border / window contents thing, so after you've set the colour scheme, click the Colors tab at the top of the window.

    image: adjusting colours

    In the Colours Tab, set both the Window Background and Button Background swatches to #B4B4B4 or so. I also set the View Background to #CCCEDA just because I find the pure white background a little jarring, but you do whatever you want.

    Remember to hit the Apply button to see your changes!

  6. Widgets

    OS X Lion and later borrow a lot from the traditional look and functionality of the GNOME desktop, including the shape of the buttons, so that's really easy to change.

    Click the Style button in the left column of your current window (you should still be in System Settings > Application Appearance). From the top drop-down menu, choose Cleanlooks to get the rounded-square buttons that Lion borrowed from GNOME.

    As always, remember to click the Apply button to see your changes.

  7. Font

    The font that ships by default with KDE is pretty generic. There are obviously lots of fonts you could substitute for it, but only a few seem to really fit in all the little nooks and crannies they are supposed to.

    I take the simple route; I click the Fonts icon (we're still in System Settings > Application Appearance) and click the Adjust All Fonts button near the lower right of the window.

    setting fonts

    Place a check mark for the Fonts option and choose Jamrul. This is a very clean and smooth font that spruces things up just enough to be noticeable. Another safe bet is the Fedora/GNOME-sanctioned font Cantarell but that doesn't ship with Slackware so you'd have to go download and install it. Not difficult, just another step.

  8. Icons

    Personally I've learnt that on any OS, it's easier to just stick with the default icons, becuase when I start changing icon themes then I start getting picky and waste hours and hours trying to replace that one last icon that the new theme doesn't replace and just doesn't quite fit in, and so on. However, I have found one icon set that adds just a few Mac-like touches here and there, so maybe it's worth trying.

    Grab Leon Custom Icon Pack from its Deviant Art homepage. That downloads a .zip file, which you should extract in your home folder. After unzipping, you have two tarballs inside of a "Leon icon set" folder: Leon.tar and Leon-mono-dark.tar. You want to put them in your system icon folder like this:

    $ su -c 'tar -xvf ~/Leon*set/Leon.tar -C /usr/share/icons'
    $ su -c 'tar -xvf ~/Leon*set/Leon*dark.tar -C /usr/share/icons'

    Now the icons sets are installed. Activate it by going to System Settings > Application Appearance > Icons

    The icon set is called elementary because the author of the set used a different icon set (called elementary) and forgot to rename it. Doesn't really matter; just activate the elementary theme and click the Apply button. I find it best to log out and the log back in after doing this (just log out of the desktop and back in; not a full reboot).

    image: icons

    The icon set isn't complete, but for certain elements I think it fits in nicely. All in all, I usually skip the icon customization though.

  9. Notifications

    Now let's turn off some of the stuff that Mac users often find foreign.

    image: adjusting some minor details
    • In System Settings > System Notifications > Launch Feedback: Set Busy Cursor to No Busy Cursor
    • In the same window, disable Taskbar Notification
    • In System Settings > Desktop Effects > All Effects Tab: uncheck the Taskbar Thumbnails, Startup Feedback, and Outline effects.
    • In System Settings > Removable Devices, turn on the Enable automatic mounting of removable media.
  10. GTK

    Applications like Firefox and Thunderbird are governed by a different theming engine. It's an easy install.

    The applications to install are:

    image: gtk themes

    If you're using sport, then you can do this as root:

    sport i gtk-engines
    sport i gtk-qt-engine

    And then they'll be installed. Otherwise, download the SlackBuilds and install manually. If you're unfamiliar with how to install software on Slackware and want to learn more, check out the Slackermedia chapter on the subject.

    Once these are installed, go back to System Settings > GTK Styles and Fonts.

    • Set GTK Styles to Use another style, using Industrial.
    • Use my KDE fonts in GTK applications
    • Install scrollbar fix

    Log out, log back in, and your GTK applications (Firefox, Filezilla, Thunar, stuff like that) will now look integrated with the rest of your applications.

  11. Panel

    Right-click on the taskbar thing on the bottom of the screen > Panel Options > Panel Settings. This will reveal a lot of options for this panel; first, click and drag on the "Screen Edge" toward the top of the screen where panels are supposed to be.

    Now hover over the different elements on the panel to reveal their tabbed labels, and "X" out each one except the date. So, in the end, you'll have a mostly empty panel except a clock over on the left. That's all wrong, so let's add a few items.

    Click the Add Widgets button (if you don't see one, then your panel options has closed; just right-click the panel again and bring up the options) and add a Log-Out button set. Drag it all the way to the left. It's not quite as pretty as a fruit logo, I guess, but it's about the closest thing to what everyone uses that logo for.

    Unfortunately, there is no way, as of this howto at least, to anchor all menus to the top bar like Mac OS does. I've seen a few stabs at making this happen but it seems that most Linux users don't want that interface; it took me a long long long time, but I have actually outgrown the desire for it myself, so keep yer chin up.

    Now click the Add Spacer button and drag the spacer between the Log Out buttons and the Clock. Now you've pretty much got a simplified Mac-like menu bar with a log out buttons on the left and a clock on the right.

    Panel Theme

    Personally I find the default theme for the panel and many of the pop-up elemnts in KDE to be a little bright. So, you might want to go to System Settings > Workspace Appearance > Desktop Theme and choose an alternate theme that you like.

    image: changing the theme for panel

    Personally I really like the black panels, like the Oxygen theme or Slim Glow, but I think it's more Mac-like to go with Aya, which has a nice minimalistic muted tone.

  12. Network Manager

    You know how there's that Airport thing and the volume control and battery monitor in the upper right of Mac OS? Sure you do. Well, we need that.

    So, first enable the Network Manager (that's what the Airport widget is: a network manager) to run. On Slackware, just do this;

    $ su -c 'chmod +x /etc/rc.d/rc.networkmanager'

    Enter your root password, and then start the Network Manager for this session (it will automagically start from now on, but since it's not currently running we have to start it manually this one time):

    $ su -c NetworkManager

    Now add it to the panel by right-clicking on the top menu bar > Panel Options > Add Widget. Find and add a System Tray widget to the panel. Move it to the left of the clock.

    By default this System Tray acts an awful lot like a Windows system tray; lots of annoying alerts and notifications and an ever-changing array of buttons. We can calm it down, though, by right-clicking on it > System Tray Settings. The catch is that 9 out of 10 times when you right-click, you're actually clicking on one of the buttons INSIDE of the System Tray and not the System Tray itself, so you get things like Battery Monitor Settings and Printer Settings and whatever-the-heck-else you accidentally click on. So try a few times to click on the background part of the System Tray, until you finally see the option of System Tray Settings.

    image: system tray settings

    In the System Tray Settings window, there are two tabs on the left you need to configure, and a bunch of options within, so here's a laundry-list:

    • Display: turn everything OFF except:
      • Hardware control = on
      • Network Management = on
      • Battery Monitor = on (if you have a laptop)
    • Entries: Remove all entries except:
      • Network Management
      • Volume Control
      • Printer Applet (if you use printers much)
      • Klipper (this isn't Mac-like at all but well worth having)
  13. Keyboard Shortcuts

    I [mis-]remember Mac OS having a lot of keyboard shortcuts that made navigation a lot faster and computer more efficient. This is only partially correct, actually; turns out you can actually do a whole heck of a lot more with keyboard shortcuts on Linux, you just have to learn them. But a lot of them feel very windows-y (alt-Function-2? wtf is a function key?)

    So download my keyboard shortcuts set and global hotkeys, and install them:

    Go to System Settings > Shortcuts and Gestures and on the first screen (Custom Shortcuts) click the Edit drop-down menu > Import and import the .hotkeys file that you just downloaded. After you import it, make sure it's active (it should be checked on in the list)

    image: importing keyboard shortcuts

    Once those have imported, click Apply to save the changes, and the switch over to the Global Hotkeys tab on the left. Here, click the File drop down menu on the upper right of the window > Import Scheme. Import the global file.

    OK, so when you are using Linux you gain a lot of flexibility which will quickly become addictive, but it's different than what you're used to on a Mac. On Mac, a lot of different applications (including Finder) use the Command-shortcuts. So you might be in Firefox and hit command-n and get a new Firefox window, or you can dart out to the Finder and hit command-n and get a new Finder window. The command-n shortcut is contextual.

    On Linux, if you hit control-n you'll get a new window in Firefox, and then without even having to leave Firefox you can hit command-n (they call it "super" rather than command) and get a new Finder window. Control-based shortcuts are contextual, and Super-based shortcuts transcend applications so that they can be universally specific.

    Being able to define truly specific, non-contextual shortcuts (ie, shortcuts whose functionality is never stolen or superceded by any other application) is a HUGE benefit of Linux. You have no idea...yet. Trust me, you will come to love it. I love it so much, I started making up in my mind that it was a Mac thing, and then one day I had to use a Mac and realized that actually there were very few, (in fact the only one I can think of is the Screenshot shortcut, and a few visual effects, like invert screen, etc), truly non-contextual shortcuts, and only then did I come to understand the true power of having a control key, an alt key, and a super key.

    The other side of that coin, of course, is that it's different than what we are used to. Here's how it breaks down, more or less:

    • Use Control where you would have used Command. Ctrl-C to copy, Ctrl-O to open, and so on.
    • Use Super where you would have used Command In The Finder or for general window-oriented functions (since Mac isn't consistent in this regard, it's hard to nail it down). In other words, use Super-N for a New Finder window, or Super-i to Get Info, or Super-W to close a window, or Super-Shift-3 for a screenshot.
    • Alt is mostly for weird little shortcuts that seem to change all the time. Honestly, I don't understand it a bit, although I admit that once you get used to it you will appreciate the flexibility it affords. From what I can tell, though, Alt is very inconsistent and puzzling. It's generally safe to ignore it altogether.

    Before we chart out all of our Mac shortcuts in an easy-to-read table, there are still a few more shortcuts you should assign, but they can only be assigned in Dolphin (what you and I think of as the "Finder"), and it's easier for me just to tell you what to set than to explain how to load in a configuration file for Dolphin, so launch a Dolphin window and click the little wrench in the upper right corner > Configure Shortcuts...

    Set these new definitions (always click Reassign to override any defaults you are conflicting with; all the defaults are stupid);

    • Create Folder = Super-Alt-N (it will show up as Meta-Shift-N: it's OK, Meta and Super are the same here)
    • Move to Trash = Backspace
    • Editable Location = Meta-Shift-G
    • Open in New Window = Meta-O
    • Properties = Meta-I
    • Rename = Return
    • Reload = Meta-R

    Click OK to save the changes.

    Now we have a proper keymap. Here is how it breaks down in relation to your former OS:

    Action Mac Smack
    Window Actions
    Close Window Command-W Super-W
    Force Quit Command-Option-Escape Super-Shift-Escape
    Minimize Window Command-M Super-M
    Finder Actions
    New Finder Window Command-N Super-N
    Create New Folder Command-Shift-N Super-Shift-N
    Open Folder in New Window Command Double-Click Click once on the Folder, then press Super-O
    Get Info Command-I Super-I
    Spotlight (Search) Command-Space Super-Space (or Find button in Dolphin)
    Switch Applications Command-Tab Super-Tab
    Switch Workspace Whut? Control-Alt-Arrow
    Send file to Trash Command-Backspace (what Macs label "Delete") Super-Backspace
    Go to Location Command-Shift-G Super-Shift-G (on Linux this actually can be used for Connect To Server, as well!)
    Applications Folder Command-Shift-A Super-Shift-A
    Eject DVD Eject Button, or some F Key Pause/Break (if you're using a non-Mac)
  14. Adding an Applications Bookmark

    Open a new Dolphin ("Finder") window [Super-N] and then Go To Location [Super-Shift-G]. In the URL bar, type Applications:

    Important That's the word Applications with a colon after it. Type that and then hit the Return key on your keyboard.

    This takes you to your Applications folder, which isn't exactly lke the Mac OS Application folder but it's as close as pragmatically possible. Those wonky categorizations are fixable, but it's more trouble than it's worth and besides you're probably going to use the Dock more than your Applications folder.

    Still, it's nice to have a quick link to it. So grab the folder icon next to where you typed Applications: and drag it into the left Places Panel of Dolphin. It should add a bookmark so you can now click on Applications and be taken straight to your Applications folder.

    If you right-click on the bookmark you've just created, you can Edit Entry and set a new icon for it, and give it a name.

  15. Configure Search

    People use system-wide searches for different things. Personally I use it merely as an application launcher, but I know some Mac users actually use it as a way to find files.

    To configure the system search tool, start Krunner (what you used to call Spotlight, or QuickSilver for the old skool users who remember who Apple ripped off to get Spotlight) with [Super-Space].

    When the little drop-down interface reveals itself, click the Wrench icon on the far left.

    In the window that appears, you can turn on or off search results that you might not want to get. That is to say, if you use your system search mostly for finding files, then turn off results like Activities, Calendar Events, Contacts, Date and Time, Control Audio Player, Desktop Sessions, Devices, Kate Sessions, KDevelop Sessions, Kget, Konqueror Sessions, Konsole Sessions, Kopete Contacts, Open Street Map with Marble, PowerDevil, Special Characters, and Web Shortcuts.

    It will unclutter your search results, and you can always turn a plugin back on when you decide you want to learn a new trick.

  16. Dock

    The most obvious finishing touch is the Dock. Like so many other UI elements, it's difficult for an experienced Mac User to get used to anything on Linux that doesn't work exactly like what it emulates from Mac OS. Since the Dock is such an integral part of Mac OS, I think it's the most difficult to use for a lot of Mac Users. But if you can get used to a dock that works a little differently than what you're used to, then Cairo-Dock can probably be a nice compromise.

    You must install Cairo-Dock because it does not come with Slackware by default. If you use sport or sbopkg then you can do something like this:

    # sport i gtkglext
    # sport i cairo-dock
    # sport i cairo-dock-plugins

    You must install the cairo-dock-plugins, or the Dock just won't work at all.

    The default dock has a bunch of icons that serve as a kind of example of how you might want to set your dock up. There are a bunch of missing icons for apps that don't come on Slackware by default, and the arrangement is wonky anyway. Setting it up can be a little frustrating, especially since the configuration menus are a little buggy, but you can try to download my own cairo-dock config to get you started. It's specific to my tastes but it might beat starting from scratch. It anchors on the left of your screen, so watch for that.

    image: dock

    The things about cairo-dock that you will like:

    • Provides icons for frequently-used applications
    • Acts as a task manager, of sorts, for currently-running applications
    • When you click on an icon, it will take you to the open instance of that application, regardless of what workspace it is on
    • Drag an application icon from applications:/ into the dock and it adds a launcher for that application
    • Drag an application icon out of the dock and it removes that icon from the dock
    • Can show the Trash if you choose

    Ways in which cairo-dock differs from OS X's dock:

    • It has the ability to have many different applets; weather forecasts, sub-docks, music player controls, and more. This is definitely a feature but if you're used to the mundane OS X dock then you will probably want to avoid these, because they will confuse you or just get in your way.
    • Initial configuration is a bit wonky. The application you use to configure the dock is complex and poorly organized, and of course the fact that you have to configure it at all is different from OS X, which gives you no choice in the matter. In the long run, you'll probably appreciate the freedom to customize it though; I certainly have.

    To install the cairo configuration you just downloaded, move the .tar file to your home directory and do this:

    $ rm -r ~/.config/cairo-dock
    $ tar -xvf ~/cairo.tar

    Once everything has been installed, start the Dock by pressing [Super-Space] and typing in cairo-dock. The dock will start with a bunch of warnings and questions, and generally all of the answers are yes, use openGL, remember my choices, and yes, start up automatically from now on.

    ImportantIf you're on an older computer that cannot seem to handle openGL, then go to System Settings > Desktop Effects > Advanced and switch your Compositing Type from openGL to XRender. That will make everything pretty.

    The basics are that you can drag icons off the dock to remove them, or drag an icon onto the dock to make it a permanent "launcher". Alternatively, if something is open and you decide you want to keep it on the dock, right-click on it and select Make it a launcher and that will add it to the dock.

    The dock also acts like Mac OS's dock in that if Firefox is already opened, then clicking on Firefox will not create a new intance of Firefox, but take you to the already-open Firefox window.

    The icons on Cairo-Dock are pretty animated; they love to bounce and fade in and out and set off fireworks. You can turn all that off, but I got lazy and left all those defaults on. Don't let the effects fool you; it's a lot simpler than you think. But do play around with some of its configurability sometime. Sometimes turning off all the options makes you feel more at home, but once you start turning on some of those extra features you just might find something you won't be able to live without!

  17. Desktop

    KDE, and in fact a lot of Linux stuff that I've seen, tends to discourage having a "desktop". By that, I mean, they don't really like having a bunch of icons on your screen all the time. Frankly, you shouldn't fight that. Trust me, your level of organization will go up drastically if you allow Linux to cut you off from that. I went desktopless back when I found Enlightenment and Fluxbox, and I have not looked back since, and my files have never been so organized. True story.

    But let's say you're not the type of person to clutter your desktop with icons and you really do want a traditional, icon-enabled desktop. In this case, right-click on the background that would be a desktop, and select Desktop Settings.

    In the Desktop Settings window, set the Layout to Folder View. Now you have a traditional desktop that you can clutter up. Click OK to save.

    You can alter the settings of your desktop by right-clicking on it again and selecting Folder View Settings. The window that appears will have lots more options; the one I like best is Location, which lets YOU choose what folder it is that you're seeing out there on your Desktop. Maybe you haven't got a Desktop folder (I haven't), but would rather see the contents of your Home folder? or maybe your Downloads folder? It's up to you!

    Of course, setting your desktop background is done here, as well. You can hunt around online or grab your old Mac desktop wallpapers from a backup, but I just go to a site like or Deviant Art or whatever, and find a good background.

  18. Annoying Tooltips (Again)

    If there's one thing KDE loves, it's pop-up tooltips. If you've enabled the Desktop Folder view, then you'll notice that every time you run your mouse over an icon on your desktop, a tooltip reiterating its name appears. Disable this by going to System Settings > Workspace Behaviour > Workspace and de-selectingShow Informational Tool-Tips.

  19. Further Finder/Dolphin Tweaks

    Got a few minutes? You can make a few more Finder tweaks. Open a Dolphin window [Super-N] and click the wrench icon in the top right corner. Select Configure Dolphin.

    In the Navigation tab, check on the Open folders during drag operations option.

    In the Trash tab, de-select to Limit the Maximum Size of the trash.

    In General, mark on the option to Remember View Properties for all Folders. This generates a bunch of meta-data that would annoy a hardcore UNIX user but it's no different than what Mac OS does, so you won't even notice.

    Still in General, Turn OFF confirmation required when dragging an item to the Trash. Turn off tooltips. Turn on Show Selection Marker.

    Still in General, but now in the Previews tab (at the top of the General pane), check on nearly all previews EXCEPT Desktop Files and Text Files.

    Still in General, but now in the Status Bar tab (at the top of the General pane), turn on both the zoom slider and the space information options.

    Click the OK button to apply, and then click ON the Previews at the top of the Dolphin window. At first you might have to turn on Previews a lot but eventually the Preview-On option gets propogated through all your different views, and you'll see lots of pretty previews and icons everywhere you go.

  20. Default Application

    Go to Systems Settings > Default Applications to set your basic default applications.

    • For email, set it to thunderbird
    • For File Manager, set it to Dolphin
    • For Web Browser, set it to firefox

    Other default applications can be made on a file-type basis by right-clicking on any file (say, a .mp4 file) and selecting Open With > Other. Define the application you want to open a file with, and make sure the Remember application associations for this type of file is check on and click the OK button. The system configuration will update itself so from now on all files of that type will open in the same application.

  21. Some useful applications

    Some applications are really great but do not come with Slackware by default.

    VLC, HandBrake, DVD Decryption

    Visit Slackware user alienBOB for an easy-to-install package for the very popular VLC media player.

    To install it once it has downloaded, move the vlc package to your home folder and do this;

    $ cd ~ && su -c 'installpkg ./vlc*txz'

    While you're there, grab HandBrake and libdvdcss as well. This will help you play DVDs seamlessly.


    You know Disk Utility? the application on Mac OS that helps you erase disks and stuff? There are two applications on Linux that can do these things, but the easiest to install is gparted. Download my queue file for it and install it with sport or sbopkg. For example:

    $ su -c 'sport q gparted.sqf'

    To make it so that you can run GParted as a normal user (it is usually a little restricted, since it has the power to destroy your data), open a terminal and type in:

    $ kdesu kwrite /usr/share/applications/gparted.desktop

    Search for the line that says Exec = /usr/sbin/gparted %f and make it read:

    Exec = kdesu /usr/sbin/gparted %f

    Save and close.

I'm sure there are other little tweaks you could make here and there, but over-all I think this post has demonstrated how to make your Slackware KDE box reflect a little of the Mac OS style in its layout, appearance, and interface. Keep in mind that being exactly like Mac OS is as impossible for Linux as it is for Mac OS to be exactly like Linux. You can install all the extra components and applications you want, at the end of the day, they're still two different systems. So don't approach this as a way to get exactly what you had on your old OS, see it as a way to reference what you're used to, and a cool new environment to learn and adapt.


Obligatory screenshots:

screenshot screenshot screenshot