Skip to content

Commit

Permalink
switching to chezmoi for management
Browse files Browse the repository at this point in the history
  • Loading branch information
jmpolom committed Nov 30, 2022
0 parents commit 15c2ed8
Show file tree
Hide file tree
Showing 27 changed files with 2,745 additions and 0 deletions.
1 change: 1 addition & 0 deletions .chezmoiroot
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
home
6 changes: 6 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
[submodule "powerlevel10k"]
path = powerlevel10k
url = https://github.com/romkatv/powerlevel10k.git
[submodule "fast-syntax-highlighting"]
path = fast-syntax-highlighting
url = https://github.com/zdharma-continuum/fast-syntax-highlighting.git
1 change: 1 addition & 0 deletions fast-syntax-highlighting
39 changes: 39 additions & 0 deletions functions/cosa.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
#!/bin/zsh
#
# this works on Fedora but on Debian (bash), cosa prompts for a sudo password
# when invoked without `--user root` in the podman command. Additionally, on
# Debian `/dev/kvm` doesn't have other +rw permissions which is evidently a
# requirement for qemu to run inside the container. A `fatal: Missing /dev/kvm`
# error occurs even if the calling user of this function has group permissions
# to the kvm device and `--group-add keep-groups` is added to the podman
# command.
#
# See: https://github.com/coreos/coreos-assembler/issues/2501
#

cosa () {
env | grep COREOS_ASSEMBLER
local -r COREOS_ASSEMBLER_CONTAINER_LATEST="quay.io/coreos-assembler/coreos-assembler:latest"
if [[ -z ${COREOS_ASSEMBLER_CONTAINER} ]] && $(podman image exists ${COREOS_ASSEMBLER_CONTAINER_LATEST}); then
local -r cosa_build_date_str="$(podman inspect -f "{{.Created}}" ${COREOS_ASSEMBLER_CONTAINER_LATEST} | awk '{print $1}')"
local -r cosa_build_date="$(date -d ${cosa_build_date_str} +%s)"
if [[ $(date +%s) -ge $((cosa_build_date + 60*60*24*30)) ]] ; then
echo -e "\e[0;33m----" >&2
echo "The COSA container image is more that a week old and likely outdated." >&2
echo "You should pull the latest version with:" >&2
echo "podman pull ${COREOS_ASSEMBLER_CONTAINER_LATEST}" >&2
echo -e "----\e[0m" >&2
sleep 10
fi
fi
set -x
podman run --rm -ti --security-opt label=disable --privileged \
--uidmap=1000:0:1 --uidmap=0:1:1000 --uidmap 1001:1001:64536 \
-v ${PWD}:/srv/ --device /dev/kvm --device /dev/fuse \
--tmpfs /tmp -v /var/tmp:/var/tmp --name cosa \
${COREOS_ASSEMBLER_CONFIG_GIT:+-v $COREOS_ASSEMBLER_CONFIG_GIT:/srv/src/config/:ro} \
${COREOS_ASSEMBLER_GIT:+-v $COREOS_ASSEMBLER_GIT/src/:/usr/lib/coreos-assembler/:ro} \
${COREOS_ASSEMBLER_CONTAINER_RUNTIME_ARGS} \
${COREOS_ASSEMBLER_CONTAINER:-$COREOS_ASSEMBLER_CONTAINER_LATEST} "$@"
rc=$?; set +x; return $rc
}
80 changes: 80 additions & 0 deletions home/dot_config/kitty/current-theme.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
# vim:ft=kitty

## name: Catppuccin-Macchiato
## author: Pocco81 (https://github.com/Pocco81)
## license: MIT
## upstream: https://github.com/catppuccin/kitty/blob/main/macchiato.conf
## blurb: Soothing pastel theme for the high-spirited!



# The basic colors
foreground #CAD3F5
background #24273A
selection_foreground #24273A
selection_background #F4DBD6

# Cursor colors
cursor #F4DBD6
cursor_text_color #24273A

# URL underline color when hovering with mouse
url_color #F4DBD6

# Kitty window border colors
active_border_color #B7BDF8
inactive_border_color #6E738D
bell_border_color #EED49F

# OS Window titlebar colors
wayland_titlebar_color system
macos_titlebar_color system

# Tab bar colors
active_tab_foreground #181926
active_tab_background #C6A0F6
inactive_tab_foreground #CAD3F5
inactive_tab_background #1E2030
tab_bar_background #181926

# Colors for marks (marked text in the terminal)
mark1_foreground #24273A
mark1_background #B7BDF8
mark2_foreground #24273A
mark2_background #C6A0F6
mark3_foreground #24273A
mark3_background #7DC4E4

# The 16 terminal colors

# black
color0 #494D64
color8 #5B6078

# red
color1 #ED8796
color9 #ED8796

# green
color2 #A6DA95
color10 #A6DA95

# yellow
color3 #EED49F
color11 #EED49F

# blue
color4 #8AADF4
color12 #8AADF4

# magenta
color5 #F5BDE6
color13 #F5BDE6

# cyan
color6 #8BD5CA
color14 #8BD5CA

# white
color7 #B8C0E0
color15 #A5ADCB
105 changes: 105 additions & 0 deletions home/dot_config/kitty/kitty.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,105 @@
# BEGIN_KITTY_THEME
# Catppuccin-Macchiato
include current-theme.conf
# END_KITTY_THEME

# fonts and such
font_family FiraCode Nerd Font Mono
font_size 13.0
font_features FiraCodeNerdFontCompleteM-Regular +cv02 +cv05 +cv09 +cv14 +ss04 +cv16 +cv31 +cv25 +cv26 +cv32 +cv28 +zero +onum

# mod key
kitty_mod super

# macos
macos_option_as_alt yes
macos_quit_when_last_window_closed yes
macos_show_window_title_in none
macos_thicken_font 0.75
macos_titlebar_color background

# wayland
wayland_titlebar_color background

# font size increase/decrease
map kitty_mod+equal change_font_size all +1.0
map kitty_mod+minus change_font_size all -1.0
map kitty_mod+0 change_font_size all 0

# disable chime
enable_audio_bell no

# history
scrollback_lines 10000

# quick config reload
map kitty_mod+shift+r load_config_file

# tab bar
tab_bar_min_tabs 1
tab_bar_edge bottom
tab_bar_style powerline
tab_powerline_style slanted
tab_title_template {title}{' :{}:'.format(num_windows) if num_windows > 1 else ''}

# tabs
map kitty_mod+t new_tab_with_cwd
map kitty_mod+w close_tab
map kitty_mod+p previous_tab
map kitty_mod+n next_tab
map kitty_mod+shift+i set_tab_title

# layouts
enabled_layouts splits,fat,grid,horizontal,stack,tall,vertical

# splits
map kitty_mod+z goto_layout splits
map kitty_mod+l next_layout
map kitty_mod+k launch --location=hsplit
map kitty_mod+j launch --location=vsplit

# tab nav by number
map kitty_mod+1 goto_tab 1
map kitty_mod+2 goto_tab 2
map kitty_mod+3 goto_tab 3
map kitty_mod+4 goto_tab 4
map kitty_mod+5 goto_tab 5
map kitty_mod+6 goto_tab 6
map kitty_mod+7 goto_tab 7
map kitty_mod+8 goto_tab 8
map kitty_mod+9 goto_tab 999
map kitty_mod+left previous_tab
map kitty_mod+right next_tab

# clipboard
map kitty_mod+c copy_to_clipboard
map kitty_mod+v paste_from_clipboard
map kitty_mod+s paste_from_selection

# windows
map kitty_mod+enter new_window
map kitty_mod+shift+enter new_window_with_cwd
map kitty_mod+[ prev_window
map kitty_mod+] next_window
map kitty_mod+shift+w close_other_tabs_in_os_window

# resize windows
map kitty_mod+shift+left resize_window narrower 2
map kitty_mod+shift+right resize_window wider 2
map kitty_mod+shift+up resize_window taller 2
map kitty_mod+shift+down resize_window shorter 2

# window nav
map kitty_mod+shift+h neighboring_window left
map kitty_mod+shift+l neighboring_window right
map kitty_mod+shift+k neighboring_window up
map kitty_mod+shift+j neighboring_window down

# scrolling
map kitty_mod+/ show_scrollback
map kitty_mod+y scroll_line_up
map kitty_mod+e scroll_line_down
map kitty_mod+u scroll_page_up
map kitty_mod+d scroll_page_down
map kitty_mod+shift+g scroll_end
map kitty_mod+g scroll_home
29 changes: 29 additions & 0 deletions home/dot_config/nvim/init.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
-- Plugins and settings are in their own modules
require("plugins")
require("options")

-- Strip trailing whitespace
vim.api.nvim_create_autocmd("BufWritePre", { command = "%s/\\s\\+$//e" })

-- Space deactivated in normal+visual modes
vim.keymap.set({ "n", "v" }, "<Space>", "<Nop>")

-- No more macros
vim.keymap.set("n", "q", "<Nop>")

-- Double escape turns off search highlighting
vim.keymap.set("n", "<Esc><Esc>", "<Esc>:nohlsearch<CR><C-l><CR>",
{ silent = true })

-- Buffer nav
vim.keymap.set("n", "<Tab>", ":bnext<CR>")
vim.keymap.set("n", "<S-Tab>", ":bprevious<CR>")
vim.keymap.set("n", "<C-q>", ":bprevious <BAR> bd #<CR>")
-- vim.keymap.set("n", "<C-v>", ":vsplit<CR>")
-- vim.keymap.set("n", "<C-q>", ":close<CR>")
-- vim.keymap.set("n", "<S-l>", ":wincmd l<CR>")
-- vim.keymap.set("n", "<S-h>", ":wincmd h<CR>")

-- Pasting indent
vim.keymap.set("n", "p", "[p")
vim.keymap.set("n", "P", "[P")
35 changes: 35 additions & 0 deletions home/dot_config/nvim/lua/options.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
-- Appearance
vim.opt.background = "dark"
vim.cmd("colorscheme catppuccin-macchiato")
vim.opt.cursorline = true
vim.opt.number = true
vim.opt.relativenumber = false
vim.opt.termguicolors = true

-- General
vim.opt.shell = "/bin/zsh"
vim.opt.clipboard = { "unnamed", "unnamedplus" }
vim.opt.confirm = true
vim.opt.hidden = true
vim.opt.wildignore = vim.opt.wildignore + { "*/.git/*", "*/.DS_Store" }

-- Formatting
vim.opt.expandtab = true
vim.opt.linebreak = true
vim.opt.shiftwidth = 4
vim.opt.softtabstop = 4
vim.opt.smartcase = true
vim.opt.smartindent = true
vim.opt.wrap = false

-- Undo
vim.opt.undofile = true
vim.opt.undolevels = 5000

-- Windows
vim.opt.splitbelow = true
vim.opt.splitright = true

-- Tolerability
vim.opt.errorbells = false
vim.opt.visualbell = false
28 changes: 28 additions & 0 deletions home/dot_config/nvim/lua/plugins.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
local ensure_packer = function()
local fn = vim.fn
local install_path = fn.stdpath('data')..'/site/pack/packer/start/packer.nvim'
if fn.empty(fn.glob(install_path)) > 0 then
fn.system({'git', 'clone', '--depth', '1', 'https://github.com/wbthomason/packer.nvim', install_path})
vim.cmd [[packadd packer.nvim]]
return true
end
return false
end

local packer_bootstrap = ensure_packer()

return require('packer').startup({function(use)
use 'wbthomason/packer.nvim'
use { "catppuccin/nvim", as = "catppuccin" }

-- Automatically set up your configuration after cloning packer.nvim
-- Put this at the end after all plugins
if packer_bootstrap then
require('packer').sync()
end
end,
config = {
display = {
open_fn = require('packer.util').float,
}
}})
Loading

0 comments on commit 15c2ed8

Please sign in to comment.