= macOS Installer

Opinionated shell scripts for automated macOS machine setup via Homebrew and Mac App Store.

== Features

* Installs link:https://developer.apple.com/xcode[Xcode Command Line Tools]
* Installs link:http://brew.sh[Homebrew] with proper PATH configuration
* Installs Homebrew formulas (CLI tools)
* Installs Homebrew casks (GUI applications)
* Installs link:http://www.apple.com/macosx/whats-new/app-store.html[App Store] software via mas
* Installs Google Fonts (Barlow, Barlow Semi Condensed, Poppins)
* Provides interactive CLI for step-by-step installation
* Includes web-based installer generator at https://install.due.ren

== Quick Install

For a fresh macOS machine, run:

[source,bash]
----
curl -fsSL https://static.due.ren/install.sh | bash
----

This single command installs everything automatically. See link:QUICK_INSTALL.md[Quick Install Guide] for details.

== Requirements

* macOS (tested on Apple Silicon and Intel)
* Internet connection
* Mac App Store account (for App Store installations)

== Manual Installation

Clone and run interactively:

[source,bash]
----
git clone https://git.due.ren/andreas/mac_os.git
cd mac_os
bin/run
----

You will be presented with the following options:

....
Install:
   b:  Install basics (fonts).
   t:  Install development tools (Xcode CLI).
  hf:  Install Homebrew Formulas.
  hc:  Install Homebrew Casks.
   m:  Install Mac App Store software.
   i:  Install all (executes all install options in order).
Manage:
   c:  Check status of installed software.
   C:  Caffeinate machine (prevent sleep during installation).
   w:  Clean work (temp) directory.
   q:  Quit/Exit.
....

Choose option `i` to run a full install or select a specific option to run a single action. Each option is designed to be re-run if necessary.

Pass the option directly to skip the prompt: `bin/run i`

== Web Generator

Visit https://install.due.ren to build a custom installer with your preferred software selections. The generator creates a standalone bash script you can download and run on any Mac.

== What's Installed

=== Homebrew Formulas (CLI Tools)
* atuin - Shell history manager
* bash - Updated bash shell
* bash-completion - Bash completions
* claude-cli - Claude AI CLI
* gemini-cli - Gemini AI CLI
* node - Node.js runtime
* ffmpeg - Media processing
* mas - Mac App Store CLI
* mole - SSH tunneling
* rename - Rename utility
* ykman - YubiKey manager

=== Homebrew Casks (GUI Applications)
* eloston-chromium - Ungoogled Chromium browser
* deepl - DeepL translator
* element - Matrix client
* signal - Signal messenger
* nextcloud - Nextcloud sync client
* proton-drive - Proton Drive
* proton-mail - Proton Mail
* protonvpn - Proton VPN
* codex - AI coding assistant
* codexbar - AI assistant menu bar (steipete/tap)
* nova - Nova text editor
* transmit - FTP/SFTP client
* trimmy - Video trimming tool

=== Mac App Store Applications
* Bitwarden (1352778147) - Password manager
* Invoice Ninja (1503970375) - Invoicing
* Numbers (409203825) - Spreadsheets
* Pages (409201541) - Word processor
* PastePal (1503446680) - Clipboard manager
* xSearch (1579902068) - Search tool

=== Fonts
* Barlow - Google Font (full family)
* Barlow Semi Condensed - Google Font (full family)
* Poppins - Google Font (full family)
* Berkeley Mono - Full family (Regular, Bold, Oblique, Bold-Oblique)

== Customization

All installation scripts are in the `bin` folder:

* `bin/install_basics` - Installs custom fonts
* `bin/install_dev_tools` - Installs Xcode Command Line Tools
* `bin/install_homebrew_formulas` - Installs CLI tools via Homebrew
* `bin/install_homebrew_casks` - Installs GUI apps via Homebrew
* `bin/install_app_store` - Installs Mac App Store applications
* `bin/run` - Main CLI interface

Edit these files to customize your installation. The `lib` folder provides helper functions for Homebrew installation, verification, and system utilities.

== Project Structure

----
mac_os/
├── bin/              # Installation scripts
├── lib/              # Helper libraries
├── fonts/            # Custom fonts to install
├── website/          # Web-based installer generator
├── install.sh        # Single-file installer for hosting
└── README.adoc       # This file
----

== Development

To contribute:

[source,bash]
----
git clone https://git.due.ren/andreas/mac_os.git
cd mac_os
----

Make your changes and submit a pull request.

== License

MIT License

== Credits

Forked and simplified from link:https://github.com/bkuhlmann/mac_os[bkuhlmann/mac_os].

Customized by link:https://due.ren[Andreas Dünnebacke].
