box-setup/README.md

54 lines
2.6 KiB
Markdown

# repo containing configs and scripts to set up a box
### script run
- [prerequisites below are fulfilled]
- 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 (2025-01-27, not needed on macos)
- export the env var `BOX_SETUP_OS` to indicate the operating system
- options defined in `set_script_env_vars` file
- 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
- add logic to the main run script to set `BOX_SETUP_OS` var, either input param or detect
- config for nvim
- config for mpd, mpc, ncmpcpp
- config for ghostty
- config for mpv
- also, on macos, get it to open within terminal or just don't install it
- config for gimp, `src_files/.config/GIMP` (dir)
- set things in gtkrc only? still need to nest that within a sub dir?
- or maybe just configure in gimp's gui, copy the whole resulting dir into
`src_files/.config/GIMP` (edit out and delete what i don't need) and call it a day
- for whatever is causing it, editor/terminal/other, git rid of ligatures/name?
- for example, `>=` is two chars (`>` then `=`), not one char/symbol
- decide on window manager for linux, then do config
- look into xquartz for macos (x/xorg emulation or something?)
- 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
- docker? or alternatives like podman? any license concerns?
- asdf, or language-specific version managers?
- hybrid of the above?