Monday, June 10, 2024

Unveiling Omakub: The Ultimate Tool for Customizing Your Linux Desktop

 The dream of a perfectly customized Linux desktop is a common goal among its users. With Linux, you have the freedom to tailor the interface, install applications, and add GNOME Shell extensions to suit your personal preferences.

For many users, customizing their desktop is straightforward: adding applications, setting a beautiful wallpaper, and installing a few extensions. But for those who desire a more personalized setup, the options can be overwhelming, and the process can be time-consuming and complex.

Imagine the convenience of running a single command to achieve a personalized setup!

Introducing Omakub

Omakub is a new bash script designed to transform a fresh Ubuntu 24.04 LTS installation into an optimized web development environment with just one command.

"Omakub was created by me, David Heinemeier Hansson, to simplify my own Linux setup and to help our technical staff at 37signals transition to Linux. It’s designed for a specific context where Ruby on Rails, web development tools, and commercial services are interconnected," Hansson explains.

"No more writing custom configurations for every essential tool just to get started or using all the latest command-line tools," the Omakub website adds.

Omakub provides a quick way to achieve a solid initial setup on a vanilla Ubuntu installation, serving as a convenient starting point.

Why Ubuntu?

David Heinemeier Hansson explains, "Omakub uses vanilla Ubuntu because it’s one of the most widely adopted Linux distributions, and even a pre-installed choice from many computer vendors."

"Although Ubuntu has a great package manager in apt, many desired developer tools aren’t packaged, require newer versions than those in LTS, or need post-installation actions for optimal operation," he continues.

While dedicated users of nixOS or Arch might not need such a script, those transitioning to Linux from Windows might find Omakub invaluable.

A Pragmatic Approach

Omakub utilizes the Alacritty terminal and focuses on practicality rather than idealism. It includes a range of GUI and CLI tools to create a comfortable and efficient coding environment:

  • Google Chrome
  • VScode
  • Zoom
  • 1Password
  • Pinta
  • Ulauncher
  • Xournal++
  • Flameshot
  • VLC
  • Spotify

Additionally, Omakub configures Docker with MySQL and Redis, installs Lazydocker for easy Docker control, NeoVim, the gh CLI for GitHub, rbenv for Ruby management, and nodenv for Node.js management.

GNOME Shell remains the default desktop but is enhanced with add-ons for a keyboard-driven and window-tiling workflow.

Trying Omakub

To explore Omakub, you can review the bash script on GitHub and visit the official website for a detailed video demonstration.

Omakub must be run on a new Ubuntu 24.04 LTS installation or one that hasn’t been significantly altered. Running the script on an existing setup is possible but carries the risk of configuration conflicts.

The command will download and run the script, automating the process except for approving four GNOME Extensions. Once the script completes, logging out and rebooting is recommended to apply the new settings.

Running scripts from the internet is generally discouraged in the Linux community. If you decide to use Omakub, review the script on GitHub to understand its actions. Reverting the changes made by Omakub will require more than a single command.

Omakub is a remarkable tool that offers substantial value with minimal effort. Its software choices and aesthetic changes may not suit everyone, but it provides a time-saving solution for those new to Linux.


Omakub is an excellent tool for web developers new to Linux, offering a ready-to-use setup for web development. This script is easy to use and can save considerable time by simplifying the configuration process.

While it may not be suitable for all users, especially those who prefer to configure their systems themselves, Omakub is a valuable resource for developers starting with Linux. It provides an efficient, user-friendly setup for web development, making the transition to Linux smoother and more enjoyable.


Post a Comment