# dotfiles, plus scripts for box setup ## prereqs - zsh and git installed - git clone this repo ### specific prereqs, linux distros - sudo access is configured for current user ### specific prereqs, macos - install the package manager, [homebrew](https://brew.sh/) - for aerospace window manager, have only 1 workspace/desktop - manual settings, refer to [ref/macos-system-settings](ref/macos-system-settings.md) ## script run - to do the full setup, from git root dir, run: `./box_setup.sh` - to copy dotfiles only, from git root dir, run: `./copy_dotfiles.sh` ## after script run - complete manual actions specified in [ref/post-run](ref/post-run.md) ## todo items - config for: terminal (kitty? havoc?); shell; mpd, mpc, ncmpcpp; mpv - hyprland config and install on linux - web browsers config and install - get find, xargs, awk (use nawk) as unified as i can across system types - decide on docker? or alternatives like podman? any license concerns? - pick rss reader; newsboat? others? option with inbox and separate queues? - decide if i even want a filemanager; if yes, pick one and configure - decide what i'm doing for music streaming; spotify official? web? tui option? - switch installation approach, use csv file with programs to install, install types, any extra flags/opts, comments - regarding the system-types idea i'd started to build in already, maybe have a column for filtering in the csv file, or just have multiple csv files corresponding to a base/core install, a music-studio install, a employer/work machine, etc. - alternate idea: columns for "include_in_systems" and/or "excluded_from_systems" - if both, likely apply the include column first, then the exclude (priority) - add command in tmux to perform cd to a given dir in all windows of the current session - in pina theme, cursor (cursorline) and comments (rendered in neovim) are same color, fix ## attribution ### Original pattern/approach and some key config logic The original pattern and approach for this project, the program-installation scripts and logic, the copy-configs-and-scripts scripts and logic, the "tmux sessionizer" (tmux session init logic), my initial neovim and tmux configs, and my general workflow/workspace strategy, were derived from several of ThePrimeagen's projects and videos, including a FrontEnd Masters course which he taught (each are listed below). I was unable to locate any required licenses or copyrights for the code contained within these sources, but I wanted to give attribution nonetheless. - [dev/setup/config repo](https://github.com/ThePrimeagen/dev) - [neovim config](https://github.com/ThePrimeagen/init.lua) - [tmux sessionizer](https://github.com/ThePrimeagen/tmux-sessionizer) - [YouTube video - neovim config video](https://www.youtube.com/watch?v=w7i4amO_zaE) - [FrontEnd Masters course - dev productivity v2](https://frontendmasters.com/courses/developer-productivity-v2/) Author: ThePrimeagen (Michael Paulson) ### Some themes and theme-swtiching/setting logic The theme configuration files in this repository under [src_files/imports/themes-omarchy-core](src_files/imports/themes-omarchy-core) are copied from, and much of the "theme-switching" or "theme-setting" logic and scripts are derived from, [Omarchy](https://github.com/basecamp/omarchy), which is licensed under the [MIT License](https://github.com/basecamp/omarchy/blob/master/LICENSE). Copyright (c) David Heinemeier Hansson ### Additional/extra themes (Omarchy extra themes) Additional theme configuration files in this repository under [src_files/imports/themes-omarchy-extra](src_files/imports/themes-omarchy-extra) are copied or derived from projects of additional conrtibutors to the Omarchy community/ecosystem. For information about authors/licenses/copyrights for each, refer to any LICENSE and/or ATTRIBUTION.md files in each theme's respective directory under [src_files/imports/themes-omarchy-extra](src_files/imports/themes-omarchy-extra).