Compare commits

..

2 Commits

16 changed files with 78 additions and 250 deletions

View File

@@ -13,14 +13,21 @@
- manual settings, refer to [ref/macos-system-settings](ref/macos-system-settings.txt) - manual settings, refer to [ref/macos-system-settings](ref/macos-system-settings.txt)
### script run ### script run
- (run these commands from repo's root dir) - to do the full setup, from git root dir, run: `./box_setup.sh`
- to do the full setup, run: `./box_setup.sh` - to copy dotfiles only, from git root dir, run: `./copy_dotfiles.sh`
- to copy dotfiles only, run: `./copy_dotfiles.sh`
### after script run ### after script run
- complete manual actions specified in [ref/post-run-manual](ref/post-run-manual.md) - complete manual actions specified in [ref/post-run](ref/post-run.md)
------------------------------------------------------------------------------------------
### todo items ### todo items
- choose window manager for linux, then configure - choose window manager for linux, then configure
- config for: terminal (ghostty); shell; mpd, mpc, ncmpcpp; mpv - config for: terminal (ghostty); shell; mpd, mpc, ncmpcpp; mpv
- decide on docker? or alternatives like podman? any license concerns? - decide on docker? or alternatives like podman? any license concerns?
- 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.
- add command in tmux to perform cd to a given dir in all windows of the current session

View File

@@ -13,4 +13,4 @@ ${=BOX_SETUP_INSTALL_COMMAND} \
ripgrep ripgrep
[[ "$BOX_SETUP_OS" = "macos" ]] && [[ "$BOX_SETUP_OS" = "macos" ]] &&
${=BOX_SETUP_INSTALL_COMMAND} coreutils ${=BOX_SETUP_INSTALL_COMMAND} coreutils findutils

View File

@@ -8,15 +8,16 @@ idea from the ThePrimeagen: designated workspace/label/desktop per app/purpose
| workspace number | wm layout/mode | | workspace number | wm layout/mode |
|--------------------------------------------------------------|------------------------| |--------------------------------------------------------------|------------------------|
| 1. notes/drawing (stack: nvim, obsidian, gimp) | stack | | 1. notes (stack: nvim, obsidian) | stack |
| 2. music makeing - misc | stack | | 2. music makeing - misc | stack |
| 3. music making - daw | floating (workaround) | | 3. music making - daw | floating (workaround) |
| 4. music/audio listening | stack | | 4. drawing (currently: gimp) | stack |
| 5. general - misc (catch-all) | stack | | 5. music/audio listening | stack |
| 6. comms (stack: emails, chats, av/calls) | stack | | 6. comms (stack: emails, chats, av/calls) | stack |
| 7. programming - misc (whatever is not in terminal) | stack | | 7. programming - misc (whatever is not in terminal) | stack |
| 8. terminal (primary; one-offs & tui apps can be anywhere) | stack | | 8. terminal (primary; one-offs & tui apps can be anywhere) | stack |
| 9. web browser | stack | | 9. web browser | stack |
| 0. general - misc (catch-all) | stack |
### ideas/guidelines: ### ideas/guidelines:
- use this consistently accross all machines - use this consistently accross all machines

View File

@@ -9,7 +9,7 @@ enable-normalization-opposite-orientation-for-nested-containers = true
accordion-padding = 0 # ref: https://nikitabobko.github.io/AeroSpace/guide#layouts accordion-padding = 0 # ref: https://nikitabobko.github.io/AeroSpace/guide#layouts
default-root-container-layout = 'accordion' # tiles|accordion default-root-container-layout = 'accordion' # tiles|accordion
default-root-container-orientation = 'auto' # horizontal|vertical|auto default-root-container-orientation = 'vertical' # horizontal|vertical|auto
# refs: https://nikitabobko.github.io/AeroSpace/guide#on-focus-changed-callbacks # refs: https://nikitabobko.github.io/AeroSpace/guide#on-focus-changed-callbacks
# https://nikitabobko.github.io/AeroSpace/commands#move-mouse # https://nikitabobko.github.io/AeroSpace/commands#move-mouse
@@ -94,6 +94,7 @@ automatically-unhide-macos-hidden-apps = true
alt-7 = 'workspace 7' alt-7 = 'workspace 7'
alt-8 = 'workspace 8' alt-8 = 'workspace 8'
alt-9 = 'workspace 9' alt-9 = 'workspace 9'
alt-0 = 'workspace 0'
# See: https://nikitabobko.github.io/AeroSpace/commands#move-node-to-workspace # See: https://nikitabobko.github.io/AeroSpace/commands#move-node-to-workspace
alt-shift-1 = 'move-node-to-workspace 1' alt-shift-1 = 'move-node-to-workspace 1'
@@ -105,6 +106,7 @@ automatically-unhide-macos-hidden-apps = true
alt-shift-7 = 'move-node-to-workspace 7' alt-shift-7 = 'move-node-to-workspace 7'
alt-shift-8 = 'move-node-to-workspace 8' alt-shift-8 = 'move-node-to-workspace 8'
alt-shift-9 = 'move-node-to-workspace 9' alt-shift-9 = 'move-node-to-workspace 9'
alt-shift-0 = 'move-node-to-workspace 0'
# See: https://nikitabobko.github.io/AeroSpace/commands#mode # See: https://nikitabobko.github.io/AeroSpace/commands#mode
alt-shift-semicolon = 'mode service' alt-shift-semicolon = 'mode service'
@@ -119,7 +121,7 @@ automatically-unhide-macos-hidden-apps = true
f = ['flatten-workspace-tree', 'layout floating', 'mode main'] f = ['flatten-workspace-tree', 'layout floating', 'mode main']
t = ['flatten-workspace-tree', 'layout tiling', 'mode main'] t = ['flatten-workspace-tree', 'layout tiling', 'mode main']
s = ['layout v_accordion', 'mode main'] s = ['layout v_accordion', 'mode main']
g = ['layout v_tiles', 'mode main'] g = ['layout h_tiles', 'mode main']
alt-shift-h = ['join-with left', 'mode main'] alt-shift-h = ['join-with left', 'mode main']
alt-shift-j = ['join-with down', 'mode main'] alt-shift-j = ['join-with down', 'mode main']

View File

@@ -1,206 +0,0 @@
# Place a copy of this config to ~/.aerospace.toml
# After that, you can edit ~/.aerospace.toml to your liking
# You can use it to add commands that run after AeroSpace startup.
# Available commands : https://nikitabobko.github.io/AeroSpace/commands
after-startup-command = []
# Start AeroSpace at login
start-at-login = false
# Normalizations. See: https://nikitabobko.github.io/AeroSpace/guide#normalization
enable-normalization-flatten-containers = true
enable-normalization-opposite-orientation-for-nested-containers = true
# See: https://nikitabobko.github.io/AeroSpace/guide#layouts
# The 'accordion-padding' specifies the size of accordion padding
# You can set 0 to disable the padding feature
accordion-padding = 30
# Possible values: tiles|accordion
default-root-container-layout = 'tiles'
# Possible values: horizontal|vertical|auto
# 'auto' means: wide monitor (anything wider than high) gets horizontal orientation,
# tall monitor (anything higher than wide) gets vertical orientation
default-root-container-orientation = 'auto'
# Mouse follows focus when focused monitor changes
# Drop it from your config, if you don't like this behavior
# See https://nikitabobko.github.io/AeroSpace/guide#on-focus-changed-callbacks
# See https://nikitabobko.github.io/AeroSpace/commands#move-mouse
# Fallback value (if you omit the key): on-focused-monitor-changed = []
on-focused-monitor-changed = ['move-mouse monitor-lazy-center']
# You can effectively turn off macOS "Hide application" (cmd-h) feature by toggling this flag
# Useful if you don't use this macOS feature, but accidentally hit cmd-h or cmd-alt-h key
# Also see: https://nikitabobko.github.io/AeroSpace/goodies#disable-hide-app
automatically-unhide-macos-hidden-apps = false
# Possible values: (qwerty|dvorak|colemak)
# See https://nikitabobko.github.io/AeroSpace/guide#key-mapping
[key-mapping]
preset = 'qwerty'
# Gaps between windows (inner-*) and between monitor edges (outer-*).
# Possible values:
# - Constant: gaps.outer.top = 8
# - Per monitor: gaps.outer.top = [{ monitor.main = 16 }, { monitor."some-pattern" = 32 }, 24]
# In this example, 24 is a default value when there is no match.
# Monitor pattern is the same as for 'workspace-to-monitor-force-assignment'.
# See:
# https://nikitabobko.github.io/AeroSpace/guide#assign-workspaces-to-monitors
[gaps]
inner.horizontal = 0
inner.vertical = 0
outer.left = 0
outer.bottom = 0
outer.top = 0
outer.right = 0
# 'main' binding mode declaration
# See: https://nikitabobko.github.io/AeroSpace/guide#binding-modes
# 'main' binding mode must be always presented
# Fallback value (if you omit the key): mode.main.binding = {}
[mode.main.binding]
# All possible keys:
# - Letters. a, b, c, ..., z
# - Numbers. 0, 1, 2, ..., 9
# - Keypad numbers. keypad0, keypad1, keypad2, ..., keypad9
# - F-keys. f1, f2, ..., f20
# - Special keys. minus, equal, period, comma, slash, backslash, quote, semicolon,
# backtick, leftSquareBracket, rightSquareBracket, space, enter, esc,
# backspace, tab, pageUp, pageDown, home, end, forwardDelete,
# sectionSign (ISO keyboards only, european keyboards only)
# - Keypad special. keypadClear, keypadDecimalMark, keypadDivide, keypadEnter, keypadEqual,
# keypadMinus, keypadMultiply, keypadPlus
# - Arrows. left, down, up, right
# All possible modifiers: cmd, alt, ctrl, shift
# All possible commands: https://nikitabobko.github.io/AeroSpace/commands
# See: https://nikitabobko.github.io/AeroSpace/commands#exec-and-forget
# You can uncomment the following lines to open up terminal with alt + enter shortcut
# (like in i3)
# alt-enter = '''exec-and-forget osascript -e '
# tell application "Terminal"
# do script
# activate
# end tell'
# '''
# See: https://nikitabobko.github.io/AeroSpace/commands#layout
alt-slash = 'layout tiles horizontal vertical'
alt-comma = 'layout accordion horizontal vertical'
# See: https://nikitabobko.github.io/AeroSpace/commands#focus
alt-h = 'focus left'
alt-j = 'focus down'
alt-k = 'focus up'
alt-l = 'focus right'
# See: https://nikitabobko.github.io/AeroSpace/commands#move
alt-shift-h = 'move left'
alt-shift-j = 'move down'
alt-shift-k = 'move up'
alt-shift-l = 'move right'
# See: https://nikitabobko.github.io/AeroSpace/commands#resize
alt-minus = 'resize smart -50'
alt-equal = 'resize smart +50'
# See: https://nikitabobko.github.io/AeroSpace/commands#workspace
alt-1 = 'workspace 1'
alt-2 = 'workspace 2'
alt-3 = 'workspace 3'
alt-4 = 'workspace 4'
alt-5 = 'workspace 5'
alt-6 = 'workspace 6'
alt-7 = 'workspace 7'
alt-8 = 'workspace 8'
alt-9 = 'workspace 9'
alt-a = 'workspace A' # In your config, you can drop workspace bindings that you don't need
alt-b = 'workspace B'
alt-c = 'workspace C'
alt-d = 'workspace D'
alt-e = 'workspace E'
alt-f = 'workspace F'
alt-g = 'workspace G'
alt-i = 'workspace I'
alt-m = 'workspace M'
alt-n = 'workspace N'
alt-o = 'workspace O'
alt-p = 'workspace P'
alt-q = 'workspace Q'
alt-r = 'workspace R'
alt-s = 'workspace S'
alt-t = 'workspace T'
alt-u = 'workspace U'
alt-v = 'workspace V'
alt-w = 'workspace W'
alt-x = 'workspace X'
alt-y = 'workspace Y'
alt-z = 'workspace Z'
# See: https://nikitabobko.github.io/AeroSpace/commands#move-node-to-workspace
alt-shift-1 = 'move-node-to-workspace 1'
alt-shift-2 = 'move-node-to-workspace 2'
alt-shift-3 = 'move-node-to-workspace 3'
alt-shift-4 = 'move-node-to-workspace 4'
alt-shift-5 = 'move-node-to-workspace 5'
alt-shift-6 = 'move-node-to-workspace 6'
alt-shift-7 = 'move-node-to-workspace 7'
alt-shift-8 = 'move-node-to-workspace 8'
alt-shift-9 = 'move-node-to-workspace 9'
alt-shift-a = 'move-node-to-workspace A'
alt-shift-b = 'move-node-to-workspace B'
alt-shift-c = 'move-node-to-workspace C'
alt-shift-d = 'move-node-to-workspace D'
alt-shift-e = 'move-node-to-workspace E'
alt-shift-f = 'move-node-to-workspace F'
alt-shift-g = 'move-node-to-workspace G'
alt-shift-i = 'move-node-to-workspace I'
alt-shift-m = 'move-node-to-workspace M'
alt-shift-n = 'move-node-to-workspace N'
alt-shift-o = 'move-node-to-workspace O'
alt-shift-p = 'move-node-to-workspace P'
alt-shift-q = 'move-node-to-workspace Q'
alt-shift-r = 'move-node-to-workspace R'
alt-shift-s = 'move-node-to-workspace S'
alt-shift-t = 'move-node-to-workspace T'
alt-shift-u = 'move-node-to-workspace U'
alt-shift-v = 'move-node-to-workspace V'
alt-shift-w = 'move-node-to-workspace W'
alt-shift-x = 'move-node-to-workspace X'
alt-shift-y = 'move-node-to-workspace Y'
alt-shift-z = 'move-node-to-workspace Z'
# See: https://nikitabobko.github.io/AeroSpace/commands#workspace-back-and-forth
alt-tab = 'workspace-back-and-forth'
# See: https://nikitabobko.github.io/AeroSpace/commands#move-workspace-to-monitor
alt-shift-tab = 'move-workspace-to-monitor --wrap-around next'
# See: https://nikitabobko.github.io/AeroSpace/commands#mode
alt-shift-semicolon = 'mode service'
# 'service' binding mode declaration.
# See: https://nikitabobko.github.io/AeroSpace/guide#binding-modes
[mode.service.binding]
esc = ['reload-config', 'mode main']
r = ['flatten-workspace-tree', 'mode main'] # reset layout
f = ['layout floating tiling', 'mode main'] # Toggle between floating and tiling layout
backspace = ['close-all-windows-but-current', 'mode main']
# sticky is not yet supported https://github.com/nikitabobko/AeroSpace/issues/2
#s = ['layout sticky tiling', 'mode main']
alt-shift-h = ['join-with left', 'mode main']
alt-shift-j = ['join-with down', 'mode main']
alt-shift-k = ['join-with up', 'mode main']
alt-shift-l = ['join-with right', 'mode main']
down = 'volume down'
up = 'volume up'
shift-down = ['volume set 0', 'mode main']

View File

@@ -0,0 +1,9 @@
# GIMP colorrc
#
# This file holds a list of recently used colors.
(color-history
(color "R'G'B'A float" 16 "\1\0\200\77\1\0\200\77\1\0\200\77\0\0\200\77" 0)
(color "R'G'B'A float" 16 "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\200\77" 0))
# end of colorrc

View File

@@ -0,0 +1,18 @@
# GIMP user context
(tool "gimp-pencil-tool")
(paint-info "gimp-pencil")
(foreground
(color "R'G'B'A float" 16 "\1\0\200\77\1\0\200\77\1\0\200\77\0\0\200\77" 0))
(background
(color "R'G'B'A float" 16 "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\200\77" 0))
(brush "2. Hardness 050")
(dynamics "Pressure Opacity")
(mybrush "100% Opaque")
(pattern "Pine")
(gradient "FG to BG (RGB)")
(palette "Color History")
(font "Sans-serif")
(tool-preset "Core Pointer")
# end of user context

View File

@@ -1,11 +1,10 @@
# GIMP gimprc # GIMP gimprc
# #
# personal gimprc file, takes precedence over values in system-wide gimprc # personal gimprc file, takes precedence over values in system-wide gimprc
# most values can be set within gimp by changing options in the preferences dialog
# if changing within gimp, make sure i copy those settings into my dotfiles src_files # if changing within gimp, make sure i copy those settings into my dotfiles src_files
(tile-cache-size 4G) (prev-language "en-US")
(theme "Dark") (config-version "3.0.6")
(default-image (default-image
(width 2480) (width 2480)
(height 1748) (height 1748)
@@ -14,36 +13,28 @@
(yresolution 300) (yresolution 300)
(resolution-unit inches) (resolution-unit inches)
(image-type rgb) (image-type rgb)
(precision u8-gamma) (precision u8-non-linear)
(color-managed yes)
(color-profile NULL) (color-profile NULL)
(simulation-profile NULL)
(simulation-bpc no)
(simulation-intent relative-colorimetric)
(fill-type background) (fill-type background)
(comment "Created with GIMP")) (comment ""))
(default-grid
(style dots)
(fgcolor (color-rgba 1 1 1 1))
(bgcolor (color-rgba 0 0 0 1))
(xspacing 10)
(yspacing 10)
(spacing-unit inches)
(xoffset 0)
(yoffset 0)
(offset-unit inches))
(undo-size 1024M)
(quick-mask-color (color-rgba 0 0.64095744680851063 0.2932039384336802 0.5))
(import-raw-plug-in "${gimp_plug_in_dir}/plug-ins/file-raw-placeholder/file-raw-placeholder") (import-raw-plug-in "${gimp_plug_in_dir}/plug-ins/file-raw-placeholder/file-raw-placeholder")
(debug-policy never)
(check-updates no) (check-updates no)
(check-update-timestamp 1730568274) (check-update-timestamp 1759871981)
(monitor-xresolution 129) (monitor-xresolution 129)
(monitor-yresolution 129) (monitor-yresolution 129)
(show-welcome-dialog no)
(fill-options (fill-options
(style solid) (style fg-color)
(custom-style solid-color)
(antialias yes) (antialias yes)
(feather no) (feather no)
(feather-radius 10)) (feather-radius 10))
(stroke-options (stroke-options
(style solid) (style fg-color)
(custom-style solid-color)
(antialias yes) (antialias yes)
(feather no) (feather no)
(feather-radius 10) (feather-radius 10)

View File

@@ -1,2 +0,0 @@
(gtk_accel_path "<Actions>/view/view-zoom-fit-in" "<Shift><Control>j")
(gtk_accel_path "<Actions>/windows/windows-hide-docks" "<Shift><Control>d")

View File

@@ -0,0 +1,3 @@
(file-version 1)
(action "windows-hide-docks" "<Shift><Control>d")
(action "view-zoom-fit-in" "<Shift><Control>f")

View File

@@ -1,13 +1,13 @@
# GIMP gimp-paintbrush-tool options # GIMP gimp-paintbrush-tool options
(foreground (color-rgb 1 1 1)) (background
(background (color-rgb 0 0 0)) (color "R'G'B'A float" 16 "\1\0\200\77\1\0\200\77\1\0\200\77\0\0\200\77" 0))
(brush "2. Hardness 050") (brush "2. Hardness 050")
(dynamics "Pressure Opacity") (dynamics "Pressure Opacity")
(pattern "Pine")
(gradient "FG to BG (RGB)") (gradient "FG to BG (RGB)")
(palette "Color History") (palette "Color History")
(brush-size 2.0) (brush-size 2.0)
(brush-hardness 0.5) (brush-hardness 0.5)
(brush-link-size no)
# end of gimp-paintbrush-tool options # end of gimp-paintbrush-tool options

View File

@@ -1,13 +1,13 @@
# GIMP gimp-pencil-tool options # GIMP gimp-pencil-tool options
(foreground (color-rgb 1 1 1)) (background
(background (color-rgb 0 0 0)) (color "R'G'B'A float" 16 "\1\0\200\77\1\0\200\77\1\0\200\77\0\0\200\77" 0))
(brush "2. Hardness 050") (brush "2. Hardness 050")
(dynamics "Pressure Opacity") (dynamics "Pressure Opacity")
(pattern "Pine")
(gradient "FG to BG (RGB)") (gradient "FG to BG (RGB)")
(palette "Color History") (palette "Color History")
(brush-size 2.0) (brush-size 2.0)
(brush-hardness 0.5) (brush-hardness 0.5)
(brush-link-size no)
# end of gimp-pencil-tool options # end of gimp-pencil-tool options

View File

@@ -2,8 +2,13 @@
.tmux-session-hydrate .tmux-session-hydrate
zxcv* zxcv*
# cache/build/etc # compilation/debug/cache/build/etc
**/bin/
**/build/
**/__pycache__/ **/__pycache__/
*.o
*.pch
*.dSYM
# lang/package # lang/package
mise*.toml mise*.toml

View File

@@ -17,7 +17,7 @@ return {
pickers = { pickers = {
find_files = { find_files = {
find_command = { find_command = {
"rg", "--no-ignore", "--hidden", "--files", "rg", "--hidden", "--files", -- "--no-ignore",
"-g", "!**/.git/**", "-g", "!**/.git/**",
"-g", "!**/build/**", "-g", "!**/build/**",
"-g", "!**/node_modules/**", "-g", "!**/node_modules/**",
@@ -25,7 +25,7 @@ return {
}, },
live_grep = { live_grep = {
additional_args = { additional_args = {
"--no-ignore", "--hidden", "--hidden", "--no-binary", -- "--no-ignore",
"-g", "!**/.git/**", "-g", "!**/.git/**",
"-g", "!**/build/**", "-g", "!**/build/**",
"-g", "!**/node_modules/**", "-g", "!**/node_modules/**",

View File

@@ -2,7 +2,7 @@
# for reference, default macos directory was in $HOME/Library/Application Support/GIMP/ # for reference, default macos directory was in $HOME/Library/Application Support/GIMP/
nohup \ nohup \
env GIMP2_DIRECTORY=$XDG_CONFIG_HOME/gimp \ env GIMP3_DIRECTORY="$XDG_CONFIG_HOME/gimp" \
/Applications/GIMP.app/Contents/MacOS/gimp \ /Applications/GIMP.app/Contents/MacOS/gimp \
> /dev/null 2>&1 \ > /dev/null 2>&1 \
& &