repo containing configs and scripts to set up a box
prerequisites
- when running on a fresh system, ensure package manager is configured
- i.e. source repos, mirrors, etc. are configured
- zsh is installed (scripts are written for zsh)
- ensure sudo access is configured for the 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
- options defined in
prereqs, os specific, linux-placeholder
- (currently none)
prereqs, os specific, macos
- have to first install the package manager, homebrew
- for yabai window manager (at least for now, so as to not mess with SIP settings)
- create 9 spaces/desktops
- in system settings, manually set keyboard shortcuts to switch between spaces
- in system settings, for desktop/dock/mission-ctrl:
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
: disabledwhen switch to app... switch to space with open windows of app
: disableddisplays have separate spaces
: enabledshow files on desktop
: enabled
script run
- git clone this repo (TODO: consider adding logic to handle automatically)
- from the repo's root directory, run
./box_setup
todo items
- 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
- for example,
- 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?
Description
Languages
Shell
80.6%
Vim Script
19.2%
Lua
0.2%