Compare commits

..

2 Commits

Author SHA1 Message Date
967ffe1310 Add a script for updating submodules, make README nicer 2021-01-19 02:16:17 -06:00
deb6ad1c87 Move Mac configs over
HA
2021-01-19 02:00:56 -06:00
5 changed files with 150 additions and 1 deletions

View File

@ -20,4 +20,22 @@ However, I would *also* highly recommend using this stow-based approach instead
## Overview
TODO: Overview of config sets
This stash contains a number of packages for numerous situations:
| package | description |
| --- | --- |
| `base` | The base package contains shell and core utility configuration. Other packages do not depend on it; it merely contains basic configuration that I find necessary in every case. |
| `bin` | My custom binaries, plonked at `~/.bin`. |
| `desktop-common` | Common configuration shared across all possible rices. This contains things such as keybindings for applications, Quake configs, Redshift, etc. Configuration files with themes are avoided where possible. |
| `desktop-gruvbox` | My current rice and its accompanying configs. A nice and simple one with Rofi, bspwm, Dunst, Compton, and Polybar. |
| `firestarter` | A custom set of desktop environment scripts that I threw together to manage my environment without worrying about the fine details all the time. See the Firestarter repo for more info. |
| `git` | My personal git configuration. Separated from base because sometimes I don't want cockmail on all my commits. |
| `mac` | MacOS-specific configs. Very sparse; I hardly ever have to use one. |
| `ssh` | SSH configuration for my desktop machines. |
| `vim` | Configuration for Vim, everybody\*'s favorite text editor. Contains a fair few plugins and a mildly flabby `.vimrc`. |
Included within are also a handful of management scripts.
| script | description |
| --- | --- |
| `submodule-checkout-masters-and-update.sh` | For every submodule in the repo, checks out its master branch (instead of the exact commit specified in the base repo) and then pulls from upstream. Effectively, this updates any submodules in the repo, such as Vim plugins, themes, etc. |

58
mac/.config/skhd/skhdrc Normal file
View File

@ -0,0 +1,58 @@
# Open Terminal
cmd - return : ~/.config/yabai/open-iterm2.sh
# Navigation
cmd - h : yabai -m window --focus west
cmd - j : yabai -m window --focus south
cmd - k : yabai -m window --focus north
cmd - l : yabai -m window --focus east
# Focus workspace
cmd - 1 : yabai -m space --focus 1
cmd - 2 : yabai -m space --focus 2
cmd - 3 : yabai -m space --focus 3
cmd - 4 : yabai -m space --focus 4
cmd - 5 : yabai -m space --focus 5
cmd - 6 : yabai -m space --focus 6
cmd - 7 : yabai -m space --focus 7
cmd - 8 : yabai -m space --focus 8
# Moving windows
cmd + shift - h : yabai -m window --warp west
cmd + shift - j : yabai -m window --warp south
cmd + shift - k : yabai -m window --warp north
cmd + shift - l : yabai -m window --warp east
# Resize windows
lctrl + cmd - h : \
yabai -m window --resize left:-20:0 ; \
yabai -m window --resize right:-20:0
lctrl + cmd - j : \
yabai -m window --resize bottom:0:20 ; \
yabai -m window --resize top:0:20
lctrl + cmd - k : \
yabai -m window --resize bottom:0:-20 ; \
yabai -m window --resize top:0:-20 ;
lctrl + cmd - l : \
yabai -m window --resize left:20:0 ; \
yabai -m window --resize right:20:0
# Move focus container to workspace
cmd + shift - 1 : yabai -m window --space 1
cmd + shift - 2 : yabai -m window --space 2
cmd + shift - 3 : yabai -m window --space 3
cmd + shift - 4 : yabai -m window --space 4
cmd + shift - 5 : yabai -m window --space 5
cmd + shift - 6 : yabai -m window --space 6
cmd + shift - 7 : yabai -m window --space 7
cmd + shift - 8 : yabai -m window --space 8
# Float window
lctrl - f : yabai -m window --toggle float
# Fullscreen window
alt + shift - f : yabai -m window --toggle zoom-fullscreen
cmd + shift - f : yabai -m window --toggle native-fullscreen
# Balance space in workspace
cmd + shift - 0 : yabai -m space --balance
# Restart yabai
cmd + shift - r : \
skhd -r ; \
~/.config/yabai/yabairc

View File

@ -0,0 +1,22 @@
#! /bin/sh
#
# open-iterm2.sh
# Copyright (C) 2020 Vintage Salt <rehashedsalt@cock.li>
#
# Distributed under terms of the MIT license.
#
osascriptcmd='tell application "iTerm2" to create window with default profile'
if ! pgrep -f "iTerm" > /dev/null 2>&1; then
echo "Opening iTerm"
open -a "/Applications/iTerm.app"
fi
if osascript -e "$osascriptcmd" > /dev/null 2>&1; then
echo "Opening new iTerm window"
else
echo "Killing iTerm and restarting"
killall "iTerm"
open -a "/Applications/iTerm.app"
osascript -e "$osascriptcmd"
fi

47
mac/.config/yabai/yabairc Executable file
View File

@ -0,0 +1,47 @@
#!/bin/bash
# bar settings
yabai -m config status_bar on
yabai -m config status_bar_text_font "Helvetica Neue:Bold:12.0"
yabai -m config status_bar_icon_font "Font Awesome 5 Free:Regular:12.0"
yabai -m config status_bar_background_color 0xff3b4252
yabai -m config status_bar_foreground_color 0xffd8dee8
yabai -m config status_bar_space_icon_strip 1 2 3 4 5 6 7 8 9 0
yabai -m config status_bar_power_icon_strip  
yabai -m config status_bar_space_icon 
yabai -m config status_bar_clock_icon 
# global settings
yabai -m config mouse_follows_focus on
yabai -m config focus_follows_mouse autofocus
yabai -m config window_placement second_child
yabai -m config window_topmost off
yabai -m config window_opacity off
yabai -m config window_opacity_duration 0.0
yabai -m config window_shadow off
yabai -m config window_border on
yabai -m config window_border_placement exterior
yabai -m config window_border_width 4
yabai -m config window_border_radius -1.0
yabai -m config active_window_border_topmost on
yabai -m config active_window_border_color 0xff81a1c1
yabai -m config normal_window_border_color 0xff4c566a
yabai -m config insert_window_border_color 0xffebcb8b
yabai -m config active_window_opacity 1.0
yabai -m config normal_window_opacity 0.90
yabai -m config split_ratio 0.50
yabai -m config auto_balance off
yabai -m config mouse_modifier fn
yabai -m config mouse_action1 move
yabai -m config mouse_action2 resize
# general space settings
yabai -m config layout bsp
yabai -m config top_padding 10
yabai -m config bottom_padding 10
yabai -m config left_padding 10
yabai -m config right_padding 10
yabai -m config window_gap 10
print "Loaded Yabai configuration\n"

View File

@ -0,0 +1,4 @@
#! /bin/sh
git submodule update --recursive --remote --init
git submodule -q foreach 'git checkout -q master && git pull'
git status