DEV Community


My eventual Linux customization that works best with my hardware (MacBook)

patarapolw profile image Pacharapol Withayasakpunt ・3 min read

My hardware in MacBook Pro 13" (mid-2012), and I eventually landed with Ubuntu, the official GNOME 3.

Compared to Windows, and perhaps macOS, even GNOME3 uses way less resources (as seen in Conky).

I have also tried Lubuntu, Xubuntu, and MATE (and installed KDE's plasma-desktop, which broke MATE), but

  • Lubuntu and KDE don't have the look I like.
  • Xubuntu has resume-from-standby-freeze problem, MATE has slow-to-connect WiFi after resume-from-standby problem.

However, GNOME3 needs some more installation and tweaks, as the default settings hide too much.


(And, yes I minimize Dock to as small as possible, but not auto-hide it. Also, at bottom.)

That is

sudo apt install gnome-tweaks
sudo apt install conky
sudo apt install pulseaudio pavucontrol # my macOS sound is too silent
Enter fullscreen mode Exit fullscreen mode

Essential GNOME tweaks for macOS hardware (keyboard)

GNOME tweaks

So, I need to swap Right Command (Win) with Right Control, because macOS keyboard doesn't have Right Control.

Conky settings

Default Conky settings flickered, but I tweaked it.

conky.config = {
    update_interval = 1,
    cpu_avg_samples = 2,
    net_avg_samples = 2,
    out_to_console = false,
    override_utf8_locale = true,
    double_buffer = true,
    no_buffers = true,
    text_buffer_size = 32768,
    imlib_cache_size = 0,
    own_window = true,
    own_window_type = 'normal',
    own_window_argb_visual = true,
    own_window_argb_value = 50,
    own_window_hints = 'undecorated,below,sticky,skip_taskbar,skip_pager',
    border_inner_margin = 5,
    border_outer_margin = 0,
    xinerama_head = 1,
    alignment = 'bottom_right',
    gap_x = 0,
    gap_y = 33,
    draw_shades = false,
    draw_outline = false,
    draw_borders = false,
    draw_graph_borders = false,
    use_xft = true,
    font = 'Ubuntu Mono:size=12',
    xftalpha = 0.8,
    uppercase = false,
    default_color = 'white',
    own_window_colour = '#000000',
    minimum_width = 300, minimum_height = 0,
    alignment = 'top_right',

conky.text = [[
${alignr}${time %H:%M:%S}
${voffset -16}${font sans-serif:bold:size=18}${alignc}${time %H:%M}${font}
${voffset 4}${alignc}${time %A %B %d, %Y}
${font}${voffset -4}
${font sans-serif:bold:size=10}SYSTEM ${hr 2}
${font sans-serif:normal:size=8}$sysname $kernel $alignr $machine
${execi 1000 acpi -b | awk "{print $1}" | sed 's/,.*//'}${alignr}${battery_percent BAT0}% ${battery_bar 8,70 BAT0}

${font sans-serif:bold:size=10}CPU ${hr 2}
${font sans-serif:normal:size=8}${execi 1000 grep model /proc/cpuinfo | cut -d : -f2 | tail -1 | sed 's/\s//'}

CPU0: ${cpu cpu0}% ${cpubar cpu0}
CPU1: ${cpu cpu1}% ${cpubar cpu1}
CPU2: ${cpu cpu2}% ${cpubar cpu2}
CPU3: ${cpu cpu3}% ${cpubar cpu3}

${font sans-serif:bold:size=10}MEMORY ${hr 2}
${font sans-serif:normal:size=8}RAM $alignc $mem / $memmax $alignr $memperc%
SWAP $alignc ${swap} / ${swapmax} $alignr ${swapperc}%

${font sans-serif:bold:size=10}DISK USAGE ${hr 2}
${font sans-serif:normal:size=8}/ $alignc ${fs_used /} / ${fs_size /} $alignr ${fs_used_perc /}%
${fs_bar /}

${font Ubuntu:bold:size=10}NETWORK ${hr 2}
${font sans-serif:normal:size=8}Local IPs:${alignr}External IP:
${execi 1000 ip a | grep inet | grep -vw lo | grep -v inet6 | cut -d \/ -f1 | sed 's/[^0-9\.]*//g'}  ${alignr}${execi 60000  wget -q -O-; echo}
${font sans-serif:normal:size=8}Down: ${downspeed wlp2s0}  ${alignr}Up: ${upspeed wlp2s0} 
${color lightgray}${downspeedgraph wlp2s0 30,130 } ${alignr}${upspeedgraph wlp2s0 30,130 }$color
${font sans-serif:bold:size=10}TOP PROCESSES ${hr 2}
${font sans-serif:normal:size=8}Name $alignr PID   CPU%   MEM%${font sans-serif:normal:size=8}
${top name 1} $alignr ${top pid 1} ${top cpu 1}% ${top mem 1}%
${top name 2} $alignr ${top pid 2} ${top cpu 2}% ${top mem 2}%
${top name 3} $alignr ${top pid 3} ${top cpu 3}% ${top mem 3}%
${top name 4} $alignr ${top pid 4} ${top cpu 4}% ${top mem 4}%
${top name 5} $alignr ${top pid 5} ${top cpu 5}% ${top mem 5}%
${top name 6} $alignr ${top pid 6} ${top cpu 6}% ${top mem 6}%
${top name 7} $alignr ${top pid 7} ${top cpu 7}% ${top mem 7}%
${top name 8} $alignr ${top pid 8} ${top cpu 8}% ${top mem 8}%
${top name 9} $alignr ${top pid 9} ${top cpu 9}% ${top mem 9}%
${top name 10} $alignr ${top pid 10} ${top cpu 10}% ${top mem 10}%
Enter fullscreen mode Exit fullscreen mode



Pulseaudio can accelerate sound output even more than 100%, and for some reasons, the sound output of my laptop was too silent... (and of course, Pulseaudio is only available in Linux.)

Current result


Ease of use

With Control+Alt+Up/Down and Shift+Control+Alt+Up/Down, I can have multiple desktops, just like the way I used to in macOS; but not as inconvenient as in MATE or Xfce.


Editor guide
stereoplegic profile image
Mike Bybee

KDE can easily do that look, especially with Latte Dock. It's so customizable and extendable that you could have 7 different Start Menu/Launchpad type launchers at once if you were so inclined. Unlike GNOME Shell, it doesn't treat you like you're too stupid to customize your own desktop without relying on hacky extensions to override DE defaults (it uses Plasma Widgets, but they're additions rather than hacks).

dan9903 profile image
Damián Meneses

I currently using KDE, customization, not in a mac hardware, but the look and feel macOS, linux is life haha

zoedreams profile image

very nice guide. This is great work.