# repo containing configs and scripts to set up a box ### script run - fulfill prerequisites below - git clone this repo - from the repo's root directory, run `./box_setup ` ### prerequisites - package manager is configured (i.e. source repos, mirrors, etc. configured) - zsh is installed (scripts are written for zsh) - sudo access is configured for current user (as of 2025-01-27, not needed on macos) - system-specific items below are fulfilled ##### prereqs, os specific, linux-placeholder - (currently none) ##### prereqs, os specific, macos - install the package manager, [homebrew](https://brew.sh/) - for yabai window manager (so as to not mess with SIP settings) - create 9 spaces/desktops - system settings > keyboard shortcuts: set keys to switch between spaces/desktops - system settings > desktop/dock/mission-control: - `click wallpaper to reveal desktop`: set to "only in stage manager" - all `drag windows to corner/edge/place` types of options: disabled - `rearrange spaces based on recent use`: disabled - `when switch to app... switch to space with open windows of app`: disabled - `displays have separate spaces`: enabled - `show files on desktop`: enabled ### todo items - add logic to the main run script to handle cloning of this repo - config for window manager for linux (first, decide which wm to use) - config for terminal emulator (currently ghostty) - config for mpd, mpc, ncmpcpp - config for mpv - config for gimp, `src_files/.config/GIMP` (dir) - set things in gtkrc only? still need to nest that within a sub dir? - or configure in gimp, copy resulting dir to `src_files/.config/GIMP`, call it a day - maybe build in flags/logic for skipping certain installs/builds (and maybe configs?) on a given system (i.e. don't install on a company box, on a server, etc.) - decide on and implement approach for languages and versioning - asdf, or language-specific version managers? - docker? or alternatives like podman? any license concerns? - hybrid of the above?