1
0
Fork 0

Compare commits

..

No commits in common. "main" and "main" have entirely different histories.
main ... main

27 changed files with 10 additions and 538 deletions

View File

@ -1,51 +1,3 @@
QUBES_DIRS = qubes dom0
ALL_DIRS = $(shell ls -d */ | sed 's#/##')
GENERAL_DIRS = $(filter-out $(QUBES_DIRS), $(ALL_DIRS))
.PHONY: all apply-general apply-qubes install-apt-essentials clean
all: apply-general apply-qubes
apply-general:
@echo "Applying general configurations..."
stow --target=$(HOME) $(GENERAL_DIRS)
apply-qubes:
@echo "Applying Qubes configurations..."
sudo rm -rf /rw/config/rc.local
sudo stow --target=/ qubes
apply-kb-layout:
xmodmap colemak_dh_matrix.xmodmap
install-apt-essentials:
sudo apt install \
tig \
htop \
tree \
ripgrep \
net-tools \
stow \
zsh \
rsync \
shellcheck \
pass \
make \
cmake \
ninja-build \
gettext \
curl \
build-essential \
jq \
wget \
lua5.4 \
luarocks \
git-lfs \
wormhole \
python3-venv \
-y
clean:
@echo "Removing stowed configurations..."
stow -D --target=$(HOME) $(GENERAL_DIRS)
stow -D --target=\ qubes
.PHONY: apply
apply:
stow --target=$${HOME} */

View File

@ -1,21 +0,0 @@
# Dotfiles a la Stow
If starting on a new machine, begin by cloning this over https:
```
$ git clone https://git.distrust.co/anton/dotfiles
```
## Qubes
The `dom0` files have to be copied over to `dom0` and placed into the correct location. To copy files over use the following command in a `dom0` terminal:
```
$ qvm-run -pass-io <app_vm> 'cat path/to/file' > /path/
```
### Split SSH
Ensure that the `qubes-ssh-socket` service is enabled
```
systemctl --user enable --now qubes-ssh-socket
systemctl --user status qubes-ssh-socket
```

View File

@ -23,8 +23,8 @@
*color11: #657b83
!! blue dark/light
*color4: #81a1c1
*color12: #5fafff
*color4: #268bd2
*color12: #839496
!! magenta dark/light
*color5: #d33682

View File

@ -1,25 +0,0 @@
exec zsh
# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
# User specific environment
if ! [[ "$PATH" =~ "$HOME/.local/bin:$HOME/bin:" ]]; then
PATH="$HOME/.local/bin:$HOME/bin:$PATH"
fi
export PATH
# Uncomment the following line if you don't like systemctl's auto-paging feature:
# export SYSTEMD_PAGER=
# User specific aliases and functions
if [ -d ~/.bashrc.d ]; then
for rc in ~/.bashrc.d/*; do
if [ -f "$rc" ]; then
. "$rc"
fi
done
fi
unset rc

View File

@ -1,282 +0,0 @@
! xmodmap for the Colemak Mod-DH layout (US, Matrix keyboard).
!
! NOTE: This layout file is NOT recommended on standard, staggered keyboards at it will not correctly apply the Angle Mod.
! It is recommended to use the approprite ANSI or ISO layout file instead.
!
! http://colemakmods.github.io/mod-dh/.
! Public domain.
keycode 49 = grave asciitilde dead_tilde asciitilde
keycode 10 = 1 exclam exclamdown onesuperior
keycode 11 = 2 at masculine twosuperior
keycode 12 = 3 numbersign ordfeminine threesuperior
keycode 13 = 4 dollar cent sterling
keycode 14 = 5 percent EuroSign yen
keycode 15 = 6 asciicircum hstroke Hstroke
keycode 16 = 7 ampersand eth ETH
keycode 17 = 8 asterisk thorn THORN
keycode 18 = 9 parenleft leftsinglequotemark leftdoublequotemark
keycode 19 = 0 parenright rightsinglequotemark rightdoublequotemark
keycode 20 = minus underscore endash emdash
keycode 21 = equal plus multiply division
keycode 24 = q Q adiaeresis Adiaeresis
keycode 25 = w W aring Aring
keycode 26 = f F atilde Atilde
keycode 27 = p P oslash Ooblique
keycode 28 = b B dead_breve asciitilde
keycode 29 = j J dstroke Dstroke
keycode 30 = l L lstroke Lstroke
keycode 31 = u U uacute Uacute
keycode 32 = y Y udiaeresis Udiaeresis
keycode 33 = semicolon colon odiaeresis Odiaeresis
keycode 34 = bracketleft braceleft guillemotleft U2039
keycode 35 = bracketright braceright guillemotright U203a
keycode 51 = backslash bar asciitilde asciitilde
keycode 38 = a A aacute Aacute
keycode 39 = r R dead_grave asciitilde
keycode 40 = s S ssharp asciitilde
keycode 41 = t T dead_acute dead_doubleacute
keycode 42 = g G dead_ogonek asciitilde
keycode 43 = m M dead_macron asciitilde
keycode 44 = n N ntilde Ntilde
keycode 45 = e E eacute Eacute
keycode 46 = i I iacute Iacute
keycode 47 = o O oacute Oacute
keycode 48 = apostrophe quotedbl otilde Otilde
keycode 94 = minus underscore endash emdash
keycode 52 = z Z ae AE
keycode 53 = x X dead_circumflex asciitilde
keycode 54 = c C ccedilla Ccedilla
keycode 55 = d D dead_diaeresis asciitilde
keycode 56 = v V oe OE
keycode 57 = k K dead_abovering asciitilde
keycode 58 = h H dead_caron asciitilde
keycode 59 = comma less dead_cedilla asciitilde
keycode 60 = period greater dead_abovedot asciitilde
keycode 61 = slash question questiondown asciitilde
keycode 65 = space space space nobreakspace
keycode 108 = Mode_switch Mode_switch
! Remove these 2 lines if you want caps lock unmodified
keycode 66 = BackSpace BackSpace BackSpace BackSpace
clear Lock
!clear Shift
!clear Control
!clear Mod1
!clear Mod2
!clear Mod3
!clear Mod4
!clear Mod5
!add Shift = Shift_L Shift_R
!add Control = Control_L Control_R
!add Mod1 = Alt_L Alt_R
!add Mod2 = Num_Lock
!add Mod4 = Meta_L Meta_R
!add Mod5 = Scroll_Lock
!keycode 9 = Escape
!keycode 22 = BackSpace Terminate_Server
!keycode 23 = Tab ISO_Left_Tab
!keycode 36 = Return
!keycode 37 = Control_L
!keycode 50 = Shift_L
!keycode 62 = Shift_R
!keycode 63 = KP_Multiply XF86_ClearGrab
!keycode 64 = Alt_L Meta_L
!keycode 67 = F1 XF86_Switch_VT_1
!keycode 68 = F2 XF86_Switch_VT_2
!keycode 69 = F3 XF86_Switch_VT_3
!keycode 70 = F4 XF86_Switch_VT_4
!keycode 71 = F5 XF86_Switch_VT_5
!keycode 72 = F6 XF86_Switch_VT_6
!keycode 73 = F7 XF86_Switch_VT_7
!keycode 74 = F8 XF86_Switch_VT_8
!keycode 75 = F9 XF86_Switch_VT_9
!keycode 76 = F10 XF86_Switch_VT_10
!keycode 95 = F11 XF86_Switch_VT_11
!keycode 96 = F12 XF86_Switch_VT_12
!keycode 77 = Num_Lock Pointer_EnableKeys
!keycode 78 = Scroll_Lock
!keycode 79 = KP_Home KP_7
!keycode 80 = KP_Up KP_8
!keycode 81 = KP_Prior KP_9
!keycode 82 = KP_Subtract XF86_Prev_VMode
!keycode 83 = KP_Left KP_4
!keycode 84 = KP_Begin KP_5
!keycode 85 = KP_Right KP_6
!keycode 86 = KP_Add XF86_Next_VMode
!keycode 87 = KP_End KP_1
!keycode 88 = KP_Down KP_2
!keycode 89 = KP_Next KP_3
!keycode 90 = KP_Insert KP_0
!keycode 91 = KP_Delete KP_Decimal
!keycode 92 = Print Sys_Req
!keycode 93 = Mode_switch
!keycode 97 = Home
!keycode 98 = Up
!keycode 99 = Prior
!keycode 100 = Left
!keycode 102 = Right
!keycode 103 = End
!keycode 104 = Down
!keycode 105 = Next
!keycode 106 = Insert
!keycode 107 = Delete
!keycode 108 = KP_Enter
!keycode 109 = Control_R
!keycode 110 = Pause Break
!keycode 111 = Print Sys_Req
!keycode 112 = KP_Divide XF86_Ungrab
!keycode 114 = Pause Break
!keycode 115 = Super_L
!keycode 116 = Super_R
!keycode 117 = Menu
!keycode 124 = ISO_Level3_Shift
!keycode 125 = NoSymbol Alt_L
!keycode 126 = KP_Equal
!keycode 127 = NoSymbol Super_L
!keycode 128 = NoSymbol Hyper_L
!keycode 156 = NoSymbol Meta_L
!keycode 8 =
!keycode 101 =
!keycode 118 =
!keycode 119 =
!keycode 120 =
!keycode 121 =
!keycode 122 =
!keycode 123 =
!keycode 129 =
!keycode 130 =
!keycode 131 =
!keycode 132 =
!keycode 133 =
!keycode 134 =
!keycode 135 =
!keycode 136 =
!keycode 137 =
!keycode 138 =
!keycode 139 =
!keycode 140 =
!keycode 141 =
!keycode 142 =
!keycode 143 =
!keycode 144 =
!keycode 145 =
!keycode 146 =
!keycode 147 =
!keycode 148 =
!keycode 149 =
!keycode 150 =
!keycode 151 =
!keycode 152 =
!keycode 153 =
!keycode 154 =
!keycode 155 =
!keycode 157 =
!keycode 158 =
!keycode 159 =
!keycode 160 =
!keycode 161 =
!keycode 162 =
!keycode 163 =
!keycode 164 =
!keycode 165 =
!keycode 166 =
!keycode 167 =
!keycode 168 =
!keycode 169 =
!keycode 170 =
!keycode 171 =
!keycode 172 =
!keycode 173 =
!keycode 174 =
!keycode 175 =
!keycode 176 =
!keycode 177 =
!keycode 178 =
!keycode 179 =
!keycode 180 =
!keycode 181 =
!keycode 182 =
!keycode 183 =
!keycode 184 =
!keycode 185 =
!keycode 186 =
!keycode 187 =
!keycode 188 =
!keycode 189 =
!keycode 190 =
!keycode 191 =
!keycode 192 =
!keycode 193 =
!keycode 194 =
!keycode 195 =
!keycode 196 =
!keycode 197 =
!keycode 198 =
!keycode 199 =
!keycode 200 =
!keycode 201 =
!keycode 202 =
!keycode 203 =
!keycode 204 =
!keycode 205 =
!keycode 206 =
!keycode 207 =
!keycode 208 =
!keycode 209 =
!keycode 210 =
!keycode 211 =
!keycode 212 =
!keycode 213 =
!keycode 214 =
!keycode 215 =
!keycode 216 =
!keycode 217 =
!keycode 218 =
!keycode 219 =
!keycode 220 =
!keycode 221 =
!keycode 222 =
!keycode 223 =
!keycode 224 =
!keycode 225 =
!keycode 226 =
!keycode 227 =
!keycode 228 =
!keycode 229 =
!keycode 230 =
!keycode 231 =
!keycode 232 =
!keycode 233 =
!keycode 234 =
!keycode 235 =
!keycode 236 =
!keycode 237 =
!keycode 238 =
!keycode 239 =
!keycode 240 =
!keycode 241 =
!keycode 242 =
!keycode 243 =
!keycode 244 =
!keycode 245 =
!keycode 246 =
!keycode 247 =
!keycode 248 =
!keycode 249 =
!keycode 250 =
!keycode 251 =
!keycode 252 =
!keycode 253 =
!keycode 254 =
!keycode 255 =

View File

@ -1 +0,0 @@
ques.SshAgent * @anyvm @anym ask target=vault

View File

@ -1,7 +1,7 @@
[user]
name = Anton Livaja
email = anton@livaja.me
signingKey = F4BF5C81EC78A5DD341C91EEDC4B7D1F52E0BA4D
email = lance@distrust.co
name = Lance R. Vick
signingKey = E90A401336C8AAA9
[push]
default = simple
[color]

View File

@ -1,9 +0,0 @@
require("config.lazy")
vim.opt.number = true
vim.opt.relativenumber = true
vim.opt.ruler = true
vim.opt.cursorline = true
vim.opt.cursorcolumn = true
vim.opt.colorcolumn = "80"
vim.opt.statusline = "%l,%c"

View File

@ -0,0 +1 @@
colorscheme lackluster-hack

View File

@ -1,6 +0,0 @@
{
"editorconfig-vim": { "branch": "master", "commit": "91bd0b0a2c6a72a110ab9feae335e1224480c233" },
"lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" },
"nvim-treesitter": { "branch": "master", "commit": "2b0760dca2354fecf48ea35fdf1d753a232e3de2" },
"tokyonight.nvim": { "branch": "main", "commit": "057ef5d260c1931f1dffd0f052c685dcd14100a3" }
}

View File

@ -1,35 +0,0 @@
-- Bootstrap lazy.nvim
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
if not (vim.uv or vim.loop).fs_stat(lazypath) then
local lazyrepo = "https://github.com/folke/lazy.nvim.git"
local out = vim.fn.system({ "git", "clone", "--filter=blob:none", "--branch=stable", lazyrepo, lazypath })
if vim.v.shell_error ~= 0 then
vim.api.nvim_echo({
{ "Failed to clone lazy.nvim:\n", "ErrorMsg" },
{ out, "WarningMsg" },
{ "\nPress any key to exit..." },
}, true, {})
vim.fn.getchar()
os.exit(1)
end
end
vim.opt.rtp:prepend(lazypath)
-- Make sure to setup `mapleader` and `maplocalleader` before
-- loading lazy.nvim so that mappings are correct.
-- This is also a good place to setup other settings (vim.opt)
vim.g.mapleader = " "
vim.g.maplocalleader = "\\"
-- Setup lazy.nvim
require("lazy").setup({
spec = {
-- import your plugins
{ import = "plugins" },
},
-- Configure any other settings here. See the documentation for more details.
-- colorscheme that will be used when installing plugins.
install = { colorscheme = { "habamax" } },
-- automatically check for plugin updates
checker = { enabled = true, notify = false },
})

View File

@ -1,6 +0,0 @@
return {
"editorconfig/editorconfig-vim",
event = "BufReadPre",
lazy = false -- Load immediately to ensure `.editorconfig` rules apply
}

View File

@ -1,8 +0,0 @@
return {
"folke/tokyonight.nvim",
lazy = false, -- Load at startup
priority = 1000, -- Ensure it loads before everything else
config = function()
vim.cmd("colorscheme tokyonight") -- Apply the theme
end
}

View File

@ -1,13 +0,0 @@
return {
"nvim-treesitter/nvim-treesitter",
build = ":TSUpdate",
event = { "BufReadPost", "BufNewFile" },
config = function()
require("nvim-treesitter.configs").setup({
ensure_installed = { "lua", "vim", "bash", "python", "javascript" }, -- Add needed languages
highlight = { enable = true },
indent = { enable = true },
})
end
}

View File

@ -1,3 +1,2 @@
binds+=('/var/lib/docker')
binds+=('/var/lib/containerd')
binds+=('/etc/systemd/user/qubes-ssh-socket.service')

View File

@ -1,5 +0,0 @@
{
"features": {
"containerd-snapshotter": true
}
}

View File

@ -1,5 +0,0 @@
{
"features": {
"containerd-snapshotter": true
}
}

View File

@ -1,10 +0,0 @@
[Unit]
Description=Run a SSH proxy socket to another QubesOS VM
[Service]
Environment=SSH_VAULT_VM=vault
ExecStart=%h/.local/bin/qubes-ssh-socket
Restart=always
[Install]
WantedBy=multi-user.target

View File

@ -1,10 +0,0 @@
# SPLIT SSH CONFIGURATION >>>
# replace "vault" with your AppVM name which stores the ssh private key(s)
SSH_VAULT_VM="vault"
if [ "$SSH_VAULT_VM" != "" ]; then
export SSH_SOCK="/home/user/.SSH_AGENT_$SSH_VAULT_VM"
rm -f "$SSH_SOCK"
sudo -u user /bin/sh -c "umask 177 && exec socat 'UNIX-LISTEN:$SSH_SOCK,fork' 'EXEC:qrexec-client-vm $SSH_VAULT_VM qubes.SshAgent'" &
fi
# <<< SPLIT SSH CONFIGURATION

View File

@ -1,10 +0,0 @@
[Unit]
Description=Run a SSH proxy socket to another QubesOS VM
[Service]
Environment=SSH_VAULT_VM=vault
ExecStart=%h/.local/bin/qubes-ssh-socket
Restart=always
[Install]
WantedBy=multi-user.target

View File

@ -5,7 +5,3 @@ run-shell "powerline-daemon -q"
source "/usr/share/powerline/bindings/tmux/powerline.conf"
# vim: ft=tmux
# Fix coloring
set-option -g default-terminal "xterm-256color"
set-option -ga terminal-overrides ",xterm-256color:Tc"

View File

@ -5,7 +5,7 @@ if [[ -r "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" ]]
source "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh"
fi
export DEFAULT_USER="anton"
export DEFAULT_USER="lrvick"
export DISABLE_AUTO_UPDATE="true"
export COMPLETION_WAITING_DOTS="true"
export HISTFILE=~/.zsh_history
@ -20,33 +20,3 @@ source ~/.zsh/themes/powerlevel10k/powerlevel10k.zsh-theme
# To customize prompt, run `p10k configure` or edit ~/.p10k.zsh.
[[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh
# Aliases
alias gib='git branch'
alias gis='git status'
alias gfa='git fetch -a'
alias gpoh='git push origin HEAD'
# Bindkeys
bindkey '^R' history-incremental-search-backward # ctrl + shift + r -> Reverse search
bindkey '^A' beginning-of-line # ctrl + a -> Move to start of line
bindkey '^E' end-of-line # ctrl + e -> Move to end of line
bindkey '^[[1;5D' backward-word # ctrl + left arrow -> Move back one word
bindkey '^[[1;5C' forward-word # Ctrl + right arrow -> Move forward one word
bindkey '\ed' kill-word
# Color different file types
export LS_COLORS='di=94:ln=36:so=35:pi=33:ex=32:bd=46;34:cd=46;34'
alias ls='ls --color=auto'
export GPG_TTY=$(tty)
# SPLIT SSH CONFIGURATION >>>
SSH_VAULT_VM="vault"
if [ "$SSH_VAULT_VM" != "" ]; then
export SSH_AUTH_SOCK="/home/user/.SSH_AGENT_$SSH_VAULT_VM"
fi
# <<< SPLIT SSH CONFIGURATION
xmodmap ~/dotfiles/colemak_dh_matrix.xmodmap