# basecamp/omakub

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/basecamp-omakub).**

8,054 stars · 794 forks · Shell

## Links

- GitHub: https://github.com/basecamp/omakub
- Homepage: https://omakub.org
- awesome-repositories: https://awesome-repositories.com/repository/basecamp-omakub.md

## Description

Omakub is an automated Ubuntu setup tool that transforms a fresh Ubuntu installation into a complete web development workstation with a single command. It provisions a full desktop environment with curated developer tools, editors, terminals, and productivity applications, applying opinionated system settings and desktop preferences through a shell-script-based automation process.

The tool coordinates multiple package managers to install software from different sources, applies user preferences by copying pre-defined configuration files into the home directory, and is designed to be re-run safely without duplicating installations or breaking existing configurations. It executes a linear series of shell commands in sequence, with each step depending on the successful completion of the previous one, ensuring a reliable and repeatable setup process.

Omakub covers the full scope of developer workstation provisioning, from automated system configuration and desktop setup to web development environment bootstrapping. The documentation provides a single command to install and configure all tools, settings, and desktop preferences needed for modern web development on Ubuntu.

## Tags

### Development Tools & Productivity

- [Ubuntu Workstations](https://awesome-repositories.com/f/development-tools-productivity/development-environment-setup/ubuntu-workstations.md) — Transforms a bare Ubuntu system into a complete development workstation with a single automated command.
- [Ubuntu Desktop Automations](https://awesome-repositories.com/f/development-tools-productivity/machine-setup-automations/ubuntu-desktop-automations.md) — Provides one-command provisioning of a full Ubuntu desktop environment with preconfigured developer tools and system preferences.
- [Configuration Automation Scripts](https://awesome-repositories.com/f/development-tools-productivity/configuration-automation-scripts.md) — Runs a single shell script to apply opinionated system settings, desktop preferences, and development tooling to a bare Ubuntu install.
- [Development Environment Provisioners](https://awesome-repositories.com/f/development-tools-productivity/deployment-environments/development-environment-provisioners.md) — Installs and configures a modern development desktop on Ubuntu, including editors, terminals, and productivity applications.
- [Ubuntu Developer Desktop Provisioners](https://awesome-repositories.com/f/development-tools-productivity/desktop-development-environments/ubuntu-developer-desktop-provisioners.md) — Installs and configures a modern development desktop on Ubuntu, including editors, terminals, and productivity applications.
- [Ubuntu Desktop Environment Setups](https://awesome-repositories.com/f/development-tools-productivity/development-environment-setup/configuration-based-setup/desktop-environment-layouts/ubuntu-desktop-environment-setups.md) — Sets up a fresh Ubuntu installation with a complete, opinionated desktop environment and development tools in one automated command.
- [Ubuntu Developer Desktop Setups](https://awesome-repositories.com/f/development-tools-productivity/development-environment-setup/ubuntu-developer-desktop-setups.md) — Transforms a fresh Ubuntu system into a ready-to-use development machine with preconfigured editors, terminals, and productivity applications.
- [Idempotent Installers](https://awesome-repositories.com/f/development-tools-productivity/installation-scripts/idempotent-installers.md) — Ships an idempotent setup script that can be re-run safely without duplicating installations or breaking existing configurations.
- [Opinionated Ubuntu Workstation Setups](https://awesome-repositories.com/f/development-tools-productivity/shell-scripting-libraries/setup-automation-scripts/opinionated-ubuntu-workstation-setups.md) — Transforms a fresh Ubuntu installation into a complete web development workstation with curated tools and desktop settings.
- [Single-Script System Bootstraps](https://awesome-repositories.com/f/development-tools-productivity/shell-scripting-libraries/setup-automation-scripts/single-script-system-bootstraps.md) — Automates system setup through a single shell script that orchestrates package installation and configuration commands.
- [Web Development Environment Bootstraps](https://awesome-repositories.com/f/development-tools-productivity/system-bootstrap-automations/web-development-environment-bootstraps.md) — Bootstraps a fresh Ubuntu system with curated tools, settings, and a modern desktop in one automated command. ([source](https://cdn.jsdelivr.net/gh/basecamp/omakub@master/README.md))

### Part of an Awesome List

- [Configuration File Deployments](https://awesome-repositories.com/f/awesome-lists/devtools/dotfiles-and-configuration/configuration-file-deployments.md) — Applies user preferences and tool settings by copying pre-defined configuration files into the home directory.
- [Developer Tool Selections](https://awesome-repositories.com/f/awesome-lists/devtools/go-libraries/curated-tooling-lists/developer-tool-selections.md) — Provides a curated set of developer tools, editors, and utilities chosen for a specific web development workflow.

### DevOps & Infrastructure

- [Environment Bootstrap Installers](https://awesome-repositories.com/f/devops-infrastructure/environment-bootstrap-installers.md) — Provides an automated script that bootstraps a full web development environment on a fresh Ubuntu installation.
- [Web Development Environment Bootstraps](https://awesome-repositories.com/f/devops-infrastructure/environment-bootstrap-installers/web-development-environment-bootstraps.md) — Installs and configures a complete set of curated tools, languages, and editors for modern web development on a new Ubuntu system.
- [Multi-Source Package Orchestrations](https://awesome-repositories.com/f/devops-infrastructure/package-management/multi-source-package-orchestrations.md) — Coordinates multiple package managers like apt, snap, and flatpak to install software from different sources.

### Operating Systems & Systems Programming

- [Ubuntu Desktop Provisionings](https://awesome-repositories.com/f/operating-systems-systems-programming/desktop-environment-frameworks/desktop-environment-components/desktop-automation/ubuntu-desktop-provisionings.md) — Provisions a full Ubuntu desktop environment with curated applications and developer tools through a single automated command.

### Software Engineering & Architecture

- [Sequential Task Execution](https://awesome-repositories.com/f/software-engineering-architecture/sequential-task-execution.md) — Executes a linear series of shell commands in order, with each step depending on the successful completion of the previous one.
