Flatten directory structure and update documentation
- Moved all files from mac_os/ subdirectory to repository root - Updated README.adoc to reflect simplified architecture - Updated QUICK_INSTALL.md with all current apps - Added claude-cli to install.sh and bin/install_homebrew_formulas - Repository now shows clean file structure without nested mac_os folder - Documentation now accurately describes opinionated installer approach Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
158
README.adoc
Normal file
158
README.adoc
Normal file
@@ -0,0 +1,158 @@
|
||||
= 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 - Commercial font (must purchase separately)
|
||||
|
||||
== 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].
|
||||
Reference in New Issue
Block a user