Compare commits

..

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

59 changed files with 885 additions and 2004 deletions

11
.gitignore vendored
View File

@ -1,6 +1,13 @@
*.swp *.swp
result
vim/bundle/ vim/bundle/
tags* tags*
vim/view
.netrwhist .netrwhist
chromedriver
home/bin/subl emacs.d/elpa
midweek*
watercooler*
spicy*
bin/duck.sh
bin/tidelift

View File

@ -1,7 +1,11 @@
## Setup ## Setup
.PHONY: install-just .PHONY: install-just install-nix
## Management ## Management
install-just: install-just:
curl --proto '=https' --tlsv1.3 -sSf https://just.systems/install.sh | bash -s -- --to ~/ curl --proto '=https' --tlsv1.3 -sSf https://just.systems/install.sh | bash -s -- --to ~/
sudo cp ~/just /usr/local/bin sudo cp ~/just /usr/local/bin
install-nix:
sh <(curl -L https://nixos.org/nix/install) --daemon

View File

@ -1,16 +1,31 @@
# Tyrel Dotfiles # Nix
## Debian
Install Nix and Home-Manager
```shell ```shell
make install-just $ export NIX_PATH=nixpkgs=/nix/var/nix/profiles/per-user/tyrel/channels/nixpkgs:/nix/var/nix/profiles/per-user/tyrel/channels
just debian $ nix-channel --add https://nixos.org/channels/nixos-22.11 nixos
$ nix-channel --add https://github.com/nix-community/home-manager/archive/release-22.11.tar.gz home-manager
$ nix-channel --update
$ nix-shell '<home-manager>' -A install
``` ```
## Arch For Macos:
Install nix-darwin
```shell ```shell
make install-just $ nix-channel --add https://github.com/LnL7/nix-darwin/archive/master.tar.gz darwin
just arch $ nix-channel --update
$ nix-build https://github.com/LnL7/nix-darwin/archive/master.tar.gz -A installer
$ ./result/bin/darwin-installer
$ ./result/sw/bin/darwin-rebuild switch --flake .
``` ```
# How To
Clone the repository, then symlink `ln -s` each file to the dotted version in your homedirectory.
ex:
```ln -s dotfiles/shell_funcs ~/.shell_funcs```

27
arch_setup.sh Executable file
View File

@ -0,0 +1,27 @@
#!/bin/bash
USER=tyrel
HOME=/home/tyrel
curl https://sh.rustup.rs -sSf | sh
sudo curl https://pyenv.run | bash
ln -s $(pwd)/home/config/nvim /home/$USER/.config/nvim
ln -s $(pwd)/home/gitconfig /home/$USER/.gitconfig
ln -s $(pwd)/home/shell_aliases /home/$USER/.shell_aliases
ln -s $(pwd)/home/shell_funcs /home/$USER/.shell_funcs
ln -s $(pwd)/home/zshrc /home/$USER/.zshrc
echo 'export PYENV_ROOT="/home/$USER/.pyenv"' >> /home/$USER/.bashrc
echo '[[ -d $PYENV_ROOT/bin ]] && export PATH="$PYENV_ROOT/bin:$PATH"' >> /home/$USER/.bashrc
echo 'eval "$(pyenv init -)"' >> /home/$USER/.bashrc
export PYENV_ROOT="$HOME/.pyenv"
[[ -d $PYENV_ROOT/bin ]] && export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init -)"
pyenv install 3.12.3
pyenv global 3.12.3
pip install neovim

33
debian_setup.sh Executable file
View File

@ -0,0 +1,33 @@
#!/bin/bash
USER=tyrel
HOME=/home/tyrel
sudo apt-get install software-properties-common
sudo add-apt-repository -y ppa:neovim-ppa/unstable
sudo apt update
sudo apt-get install -y libncurses5-dev neovim
sudo apt-get install -y build-essential zlib1g-dev libffi-dev libssl-dev libbz2-dev libreadline-dev libsqlite3-dev liblzma-dev
sudo apt-get install -y git-lfs
curl https://sh.rustup.rs -sSf | sh
sudo curl https://pyenv.run | bash
ln -s $(pwd)/home/config/nvim /home/$USER/.config/nvim
ln -s $(pwd)/home/bin /home/$USER/bin
ln -s $(pwd)/home/gitconfig /home/$USER/.gitconfig
ln -s $(pwd)/home/shell_aliases /home/$USER/.shell_aliases
ln -s $(pwd)/home/shell_funcs /home/$USER/.shell_funcs
echo 'export PYENV_ROOT="/home/$USER/.pyenv"' >> /home/$USER/.bashrc
echo '[[ -d $PYENV_ROOT/bin ]] && export PATH="$PYENV_ROOT/bin:$PATH"' >> /home/$USER/.bashrc
echo 'eval "$(pyenv init -)"' >> /home/$USER/.bashrc
export PYENV_ROOT="$HOME/.pyenv"
[[ -d $PYENV_ROOT/bin ]] && export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init -)"
pyenv install 3.10.13
pyenv global 3.10.13
pip install neovim

5
home/bin/git-clean.sh Normal file
View File

@ -0,0 +1,5 @@
#!/bin/bash
git reset --soft origin/master
git commit -a
git push -f

1
home/bin/git-fuck Normal file
View File

@ -0,0 +1 @@
oh_fuck.sh

View File

@ -1,20 +0,0 @@
#!/bin/bash
# Check if filename and line number are provided
if [ $# -ne 2 ]; then
echo "Usage: $0 <filename> <line_number>"
exit 1
fi
# Extract filename and line number from arguments
filename=$1
line_number=$2
# Get the commit hash where the line was last changed
commit_hash=$(git blame -L "$line_number,$line_number" -- "$filename" | awk '{print $1}')
# Get the email address of the committer
email_address=$(git show --no-patch --format='%ae' $commit_hash)
echo "Email address of the committer: $email_address"

View File

@ -0,0 +1,5 @@
#!/bin/bash
git tag temp$RANDOM
git reset --hard HEAD^
git push --force
echo "There. I fixed your stupid mistake Tyrel"

View File

@ -1,17 +1,17 @@
#!/bin/bash #!/bin/bash
heading() { heading() {
# or "\e" on *nix # or "\e" on *nix
HEAD="\033[96m\033[1m" HEAD="\033[96m\033[1m"
DONE="\033[0m" DONE="\033[0m"
echo -e "${HEAD}${1}${DONE}" echo -e "${HEAD}${1}${DONE}"
} }
# 0) find local git repo, or fail now # 0) find local git repo, or fail now
GIT_ROOT=$(git rev-parse --show-toplevel 2>/dev/null) GIT_ROOT=$(git rev-parse --show-toplevel 2>/dev/null)
if [[ "$GIT_ROOT" == "" ]]; then if [[ "$GIT_ROOT" == "" ]]; then
echo "! can't find nearby git repository" >&2 echo "! can't find nearby git repository" >&2
exit 1 exit 1
fi fi
# 1) show git branches # 1) show git branches
@ -26,18 +26,18 @@ echo
# 3) stashed changes # 3) stashed changes
if [[ -n $(git stash list) ]]; then if [[ -n $(git stash list) ]]; then
heading Stash heading Stash
git stash list | sed "s/^/ /" git stash list | sed "s/^/ /"
echo echo
fi fi
# 4) divergence from source # 4) divergence from source
UPSTREAM=$(git rev-parse --abbrev-ref --symbolic-full-name @{u} 2>/dev/null) UPSTREAM=$(git rev-parse --abbrev-ref --symbolic-full-name @{u} 2>/dev/null)
if [[ -n "${UPSTREAM}" ]]; then if [[ -n "${UPSTREAM}" ]]; then
heading "upstream [${UPSTREAM}] divergence" heading "upstream [${UPSTREAM}] divergence"
git diff -r $UPSTREAM --name-only --color | sed "s/^/ /" git diff -r $UPSTREAM --name-only --color | sed "s/^/ /"
else else
heading "WARNING- no upstream configured" heading "WARNING- no upstream configured"
fi fi
echo echo

8
home/bin/json2yaml Executable file
View File

@ -0,0 +1,8 @@
#!/usr/bin/env python
# convert json to yaml
# http://pyyaml.org/wiki/PyYAMLDocumentation
# python3 json2yaml.py < ~/code/manpow/moneybug/mbuploader/support/offices.json
# gist https://gist.github.com/noahcoad/46909253a5891af3699580b8f17baba8
import yaml, json, sys
sys.stdout.write(yaml.dump(json.load(sys.stdin)))

3
home/bin/killtransmission.sh Executable file
View File

@ -0,0 +1,3 @@
#!/bin/bash
killall transmission-gtk

11
home/bin/mysql_in_ram.sh Executable file
View File

@ -0,0 +1,11 @@
#!/bin/bash
set -v
umount /Volumes/ramdisk
mysql.server stop
killall mysqld
killall mysqld
killall mysqld
diskutil erasevolume HFS+ "ramdisk" `hdiutil attach -nomount ram://2048000`
cp -r /usr/local/var/mysql /Volumes/ramdisk
mysql.server start

5
home/bin/oh_fuck.sh Executable file
View File

@ -0,0 +1,5 @@
#!/bin/bash
git tag temp$RANDOM
git reset --hard HEAD^
git push --force
echo "There. I fixed your stupid mistake Tyrel"

6
home/bin/release_package.sh Executable file
View File

@ -0,0 +1,6 @@
python setup.py clean
python setup.py sdist bdist_wheel
python3 setup.py sdist bdist_wheel
gpg --detach-sign -a dist/*.gz
gpg --detach-sign -a dist/*.whl
twine upload dist/*

View File

@ -7,21 +7,15 @@
### CHANGE THESE FUNCTIONS: ### CHANGE THESE FUNCTIONS:
# Host is the ssh host
HOST=tyrel.dev
# Site is the domain (can differ from host)
SITE=tyrel.bike
upload() { upload() {
# Given a filepath and a target name, upload the screenshot # Given a filepath and a target name, upload the screenshot
chmod +r "$1" chmod +r "$1"
scp "$1" "$HOST:/www/$SITE/s/$2" scp "$1" "tyrel.dev:/www/tyrel.bike/s/$2"
} }
url() { url() {
# Given a target name, echo the expected URL of the uploaded screenshot # Given a target name, echo the expected URL of the uploaded screenshot
echo "https://$SITE/s/$1" echo "https://tyrel.pw/s/$1"
} }
### (End) ### (End)
@ -94,8 +88,7 @@ clipboard " "
# Upload it # Upload it
url=$(url "${filename}") url=$(url "${filename}")
echo "Uploading: $url" echo "Uploading: $url"
upload "${tmppath}" "${filename}" && rm "${tmppath}" || fail 3 "failed to upload ${tmppath}"
upload "${tmppath}" "${filename}" || fail 3 "failed to upload ${tmppath}"
# Copy to clipboard # Copy to clipboard
clipboard "${url}" clipboard "${url}"

3
home/bin/spoof_mac.sh Executable file
View File

@ -0,0 +1,3 @@
#!/bin/bash
sudo ifconfig en0 ether $(openssl rand -hex 6 | sed 's%\(..\)%\1:%g; s%.$%%')

View File

@ -1,5 +1,13 @@
include catppuccin-frappe # This file has been auto-generated by i3-config-wizard(1).
include tyrel-colors # It will not be overwritten, so edit it as you like.
#
# Should you change your keyboard layout some time, delete
# this file and re-run i3-config-wizard(1).
#
# i3 config file (v4)
#
# Please see https://i3wm.org/docs/userguide.html for a complete reference!
set $mod Mod4 set $mod Mod4
@ -18,14 +26,14 @@ exec --no-startup-id dex --autostart --environment i3
# The combination of xss-lock, nm-applet and pactl is a popular choice, so # The combination of xss-lock, nm-applet and pactl is a popular choice, so
# they are included here as an example. Modify as you see fit. # they are included here as an example. Modify as you see fit.
# NetworkManager is the most popular way to manage wireless networks on Linux,
# and nm-applet is a desktop environment-independent system tray GUI for it.
exec --no-startup-id nm-applet
# xss-lock grabs a logind suspend inhibit lock and will use i3lock to lock the # xss-lock grabs a logind suspend inhibit lock and will use i3lock to lock the
# screen before suspend. Use loginctl lock-session to lock your screen. # screen before suspend. Use loginctl lock-session to lock your screen.
exec --no-startup-id xss-lock --transfer-sleep-lock -- i3lock --nofork exec --no-startup-id xss-lock --transfer-sleep-lock -- i3lock --nofork
# NetworkManager is the most popular way to manage wireless networks on Linux,
# and nm-applet is a desktop environment-independent system tray GUI for it.
exec --no-startup-id nm-applet
# Use pactl to adjust volume in PulseAudio. # Use pactl to adjust volume in PulseAudio.
set $refresh_i3status killall -SIGUSR1 i3status set $refresh_i3status killall -SIGUSR1 i3status
bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +10% && $refresh_i3status bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +10% && $refresh_i3status
@ -37,7 +45,7 @@ bindsym XF86AudioMicMute exec --no-startup-id pactl set-source-mute @DEFAULT_SOU
floating_modifier $mod floating_modifier $mod
# start a terminal # start a terminal
bindsym $mod+Return exec terminator -u bindsym $mod+Return exec i3-sensible-terminal
# kill focused window # kill focused window
bindsym $mod+Shift+q kill bindsym $mod+Shift+q kill
@ -46,8 +54,7 @@ bindsym $mod+Shift+q kill
# bindsym $mod+d exec --no-startup-id dmenu_run # bindsym $mod+d exec --no-startup-id dmenu_run
bindsym $mod+d exec rofi -show run bindsym $mod+d exec rofi -show run
bindsym $mod+Shift+d exec rofi -show drun bindsym $mod+Shift+d exec rofi -show drun
bindsym $mod+Tab exec rofi -show window -p '[window] ' bindsym $mod+Shift+Tab exec rofi -show window -p '[window] '
bindsym $mod+t split toggle; layout tabbed; exec notify-send 'Tabbed'
# A more modern dmenu replacement is rofi: # A more modern dmenu replacement is rofi:
# bindcode $mod+40 exec "rofi -modi drun,run -show drun" # bindcode $mod+40 exec "rofi -modi drun,run -show drun"
# There also is i3-dmenu-desktop which only displays applications shipping a # There also is i3-dmenu-desktop which only displays applications shipping a
@ -96,6 +103,9 @@ bindsym $mod+space focus mode_toggle
# focus the parent container # focus the parent container
bindsym $mod+a focus parent bindsym $mod+a focus parent
# focus the child container
#bindsym $mod+d focus child
# Define names for default workspaces for which we configure key bindings later on. # Define names for default workspaces for which we configure key bindings later on.
# We use variables to avoid repeating the names in multiple places. # We use variables to avoid repeating the names in multiple places.
set $ws1 "1" set $ws1 "1"
@ -169,14 +179,13 @@ bindsym $mod+r mode "resize"
# Start i3bar to display a workspace bar (plus the system information i3status # Start i3bar to display a workspace bar (plus the system information i3status
# finds out, if available) # finds out, if available)
#bar { bar {
# position bottom position bottom
# status_command i3status -c ~/.config/i3status/config status_command i3status -c ~/.config/i3status/config
# tray_output primary tray_output primary
#} }
exec --no-startup-id feh --bg-scale /home/tyrel/Pictures/wallpapers/uw_vibes.png exec --no-startup-id feh --bg-scale /home/tyrel/Pictures/wallpapers/uw_vibes.png
exec --no-startup-id ~/bin/startup_i3.sh exec --no-startup-id ~/bin/startup_i3.sh
bindsym $mod+Shift+l exec dm-tool switch-to-greeter bindsym $mod+Shift+l exec dm-tool switch-to-greeter

View File

@ -7,7 +7,6 @@
"cmp-nvim-lua": { "branch": "main", "commit": "f12408bdb54c39c23e67cab726264c10db33ada8" }, "cmp-nvim-lua": { "branch": "main", "commit": "f12408bdb54c39c23e67cab726264c10db33ada8" },
"cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" }, "cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" },
"cmp-vsnip": { "branch": "main", "commit": "989a8a73c44e926199bfd05fa7a516d51f2d2752" }, "cmp-vsnip": { "branch": "main", "commit": "989a8a73c44e926199bfd05fa7a516d51f2d2752" },
"earthly.vim": { "branch": "main", "commit": "66bf86d8292d71e6f2f5e8ea371471c9809efde6" },
"fzf": { "branch": "master", "commit": "7320b7df62039c879c4f609bca946ea09b438a98" }, "fzf": { "branch": "master", "commit": "7320b7df62039c879c4f609bca946ea09b438a98" },
"fzf.vim": { "branch": "master", "commit": "1e054c1d075d87903647db9320116d360eb8b024" }, "fzf.vim": { "branch": "master", "commit": "1e054c1d075d87903647db9320116d360eb8b024" },
"indent-blankline.nvim": { "branch": "master", "commit": "29be0919b91fb59eca9e90690d76014233392bef" }, "indent-blankline.nvim": { "branch": "master", "commit": "29be0919b91fb59eca9e90690d76014233392bef" },

View File

@ -217,5 +217,4 @@ return {
require('bamboo').load() require('bamboo').load()
end, end,
}, },
{ 'earthly/earthly.vim'},
} }

View File

@ -19,7 +19,7 @@ vim.opt.cursorline = true
vim.opt.cursorcolumn = true vim.opt.cursorcolumn = true
-- Global settings -- Global settings
vim.opt.autochdir = false -- Keep vim's directory context same as the current buffer vim.opt.autochdir = true -- Keep vim's directory context same as the current buffer
vim.opt.listchars = "tab:> ,trail:.,extends:$,nbsp:_" vim.opt.listchars = "tab:> ,trail:.,extends:$,nbsp:_"
vim.opt.fillchars = "fold:-" vim.opt.fillchars = "fold:-"
@ -44,7 +44,7 @@ vim.cmd 'colorscheme bamboo'
vim.g.floaterm_keymap_toggle = '<F9>' vim.g.floaterm_keymap_toggle = '<F9>'
vim.g.floaterm_width = 0.9 vim.g.floaterm_width = 0.9
vim.g.floaterm_height = 0.9 vim.g.floaterm_height = 0.9
vim.g.floaterm_shell = "/bin/zsh" vim.g.floaterm_shell = "/bin/bash"
vim.g.rustfmt_autosave = 1 vim.g.rustfmt_autosave = 1
vim.g.rust_use_custom_ctags_defs = 1 vim.g.rust_use_custom_ctags_defs = 1
@ -123,7 +123,7 @@ vim.api.nvim_set_keymap("n", "<C-J>", ":bprev<CR>", {silent = true})
vim.api.nvim_set_keymap("n", "<C-K>", ":bnext<CR>", {silent = true}) vim.api.nvim_set_keymap("n", "<C-K>", ":bnext<CR>", {silent = true})
vim.api.nvim_set_keymap("n", "<C-o>", ":NERDTreeToggle<CR>", {silent = true}) vim.api.nvim_set_keymap("n", "<C-o>", ":NERDTreeToggle<CR>", {silent = true})
vim.api.nvim_set_keymap("n", "<F1>", ":set invrnu<CR>", {silent = true }) vim.api.nvim_set_keymap("n", "<F1>", ":set invnumber invrelativenumber<CR>", {silent = true })
vim.api.nvim_set_keymap("i", "<F1>", "<Esc>", {silent = true }) vim.api.nvim_set_keymap("i", "<F1>", "<Esc>", {silent = true })
vim.api.nvim_set_keymap("n", "<F8>", ":Tagbar<CR>", {silent = true }) vim.api.nvim_set_keymap("n", "<F8>", ":Tagbar<CR>", {silent = true })
vim.api.nvim_set_keymap("n", "<F9>", ":FloatermToggle<CR>", {silent = true }) vim.api.nvim_set_keymap("n", "<F9>", ":FloatermToggle<CR>", {silent = true })
@ -196,15 +196,3 @@ let g:vimspector_bottombar_height = 15
let g:vimspector_terminal_maxwidth = 70 let g:vimspector_terminal_maxwidth = 70
]]) ]])
local cwd = vim.fn.getcwd()
-- Generate a server address based on the current directory
local server_address = "/tmp/nvim_" .. cwd:gsub("/", "_"):gsub("\\", "_")
local success = pcall(vim.fn.serverstart, server_address)
if not success then
-- print("Error: Unable to start Neovim server. The address '" .. server_address .. "' is already in use.")
else
print("Neovim is listening on: " .. server_address)
end

View File

@ -1,123 +0,0 @@
local wezterm = require 'wezterm'
local config = {}
-- In newer versions of wezterm, use the config_builder which will
-- help provide clearer error messages
if wezterm.config_builder then
config = wezterm.config_builder()
end
wezterm.on('update-status', function(window)
-- Grab the utf8 character for the "powerline" left facing
-- solid arrow.
local SOLID_LEFT_ARROW = utf8.char(0xe0b2)
-- Grab the current window's configuration, and from it the
-- palette (this is the combination of your chosen colour scheme
-- including any overrides).
local color_scheme = window:effective_config().resolved_palette
local bg = color_scheme.background
local fg = color_scheme.foreground
window:set_right_status(wezterm.format({
-- First, we draw the arrow...
{ Background = { Color = 'none' } },
{ Foreground = { Color = bg } },
{ Text = SOLID_LEFT_ARROW },
-- Then we draw our text
{ Background = { Color = bg } },
{ Foreground = { Color = fg } },
{ Text = ' ' .. wezterm.hostname() .. ' ' },
}))
end)
-- This is where you actually apply your config choices
config.set_environment_variables = {
PATH = '/opt/homebrew/bin:' .. os.getenv('PATH')
}
-- FUCK LIGATURES
config.harfbuzz_features = { 'calt=0', 'clig=0', 'liga=0' }
config.color_scheme = 'Jellybeans (Gogh)'
config.font = wezterm.font_with_fallback { 'IosevkaTerm Nerd Font' }
config.font_size = 15
config.hide_tab_bar_if_only_one_tab = true
config.window_decorations = 'RESIZE'
config.window_background_opacity = 0.8
config.macos_window_background_blur = 80
config.window_frame = {
font = wezterm.font({ family = 'IosevkaTerm Nerd Fonk', weight = 'Bold' }),
font_size = 11,
}
config.keys = {
-- Sends ESC + b and ESC + f sequence, which is used
-- for telling your shell to jump back/forward.
{
-- When the left arrow is pressed
key = 'LeftArrow',
-- With the "Option" key modifier held down
mods = 'OPT',
-- Perform this action, in this case - sending ESC + B
-- to the terminal
action = wezterm.action.SendString '\x1bb',
},
{
key = 'RightArrow',
mods = 'OPT',
action = wezterm.action.SendString '\x1bf',
},
-- Command+, for opening "settings" in nvim
{
key = ',',
mods = 'SUPER',
action = wezterm.action.SpawnCommandInNewTab {
cwd = wezterm.home_dir,
args = { 'nvim', wezterm.home_dir .. '/.config/wezterm/wezterm.lua' },
},
},
{
key = '|',
mods = 'CTRL|SHIFT|ALT',
action = wezterm.action.SplitHorizontal { },
},
{
key = '_',
mods = 'CTRL|SHIFT|ALT',
action = wezterm.action.SplitVertical { },
},
}
function tab_title(tab_info)
local title = tab_info.tab_title
-- if the tab title is explicitly set, take that
if title and #title > 0 then
return title
end
-- Otherwise, use the title from the active pane
-- in that tab
return tab_info.active_pane.title
end
wezterm.on(
'format-tab-title',
function(tab, tabs, panes, config, hover, max_width)
local title = tab_title(tab)
if tab.is_active then
return {
{ Background = { Color = 'purple' } },
{ Text = ' ' .. title .. ' ' },
}
end
return title
end
)
-- and finally, return the configuration to wezterm
return config

View File

@ -39,8 +39,7 @@
logtree= "log --graph --oneline --decorate --all" # show a tree with branches merging logtree= "log --graph --oneline --decorate --all" # show a tree with branches merging
noop="!git commit --allow-empty -m 'no op'" noop="!git commit --allow-empty -m 'no op'"
ob = "!$EDITOR $(git diff --name-only origin/main)" # Open all files in editor that differ between origin/main and staged/unstaged ob = "!$EDITOR $(git diff --name-only origin/main)" # Open all files in editor that differ between origin/main and staged/unstaged
od = "!$EDITOR $(git diff --name-only origin/devel)" # Open all files in editor that differ between origin/main and staged/unstaged od = "!$EDITOR $(git diff --name-only HEAD)" # Open all changed files differ from current HEAD
oh = "!$EDITOR $(git diff --name-only HEAD)" # Open all changed files differ from current HEAD
p = push p = push
recent = "!git for-each-ref --format=\"%(committerdate:relative) | %(refname)\" --sort=-committerdate refs/heads | sed '/main/d' | head -n 15" # get the most 10 recent branches worked on recent = "!git for-each-ref --format=\"%(committerdate:relative) | %(refname)\" --sort=-committerdate refs/heads | sed '/main/d' | head -n 15" # get the most 10 recent branches worked on
scrum = log --since='1 day ago' --author='Tyrel Souza' --oneline scrum = log --since='1 day ago' --author='Tyrel Souza' --oneline

View File

@ -1,11 +1,8 @@
#!/bin/bash #!/bin/bash
function portaldsave() {
docker save portald:devel | gzip > portal.tar.gz
}
function rl() { function rl() {
for var in "$@"; do for var in "$@"
do
open -a iTerm ~/rl/$var open -a iTerm ~/rl/$var
settitle $var settitle $var
done done
@ -19,9 +16,6 @@ function rl-gsub() {
function rl-portalshell() { function rl-portalshell() {
docker compose -f /home/tsouza/rl/vail-dev/docker-compose.yml exec portald bash docker compose -f /home/tsouza/rl/vail-dev/docker-compose.yml exec portald bash
} }
function rl-portalrunshell() {
docker compose -f /home/tsouza/rl/vail-dev/docker-compose.yml run --rm -it portald bash
}
function rl-dbshell() { function rl-dbshell() {
docker compose -f /home/tsouza/rl/vail-dev/docker-compose.yml exec portal-db bash docker compose -f /home/tsouza/rl/vail-dev/docker-compose.yml exec portal-db bash
} }
@ -31,10 +25,3 @@ function rl-syncnode() {
function rl-redisshell() { function rl-redisshell() {
docker compose -f /home/tsouza/rl/vail-dev/docker-compose.yml exec portal-redis bash docker compose -f /home/tsouza/rl/vail-dev/docker-compose.yml exec portal-redis bash
} }
function rl-bash() {
docker compose -f /home/tsouza/rl/vail-dev/docker-compose.yml exec $1 bash
}
function rl-runbash() {
docker compose -f /home/tsouza/rl/vail-dev/docker-compose.yml run --rm -it $1 bash
}

View File

@ -7,7 +7,8 @@ function pulldep() {
} }
function tide() { function tide() {
for var in "$@"; do for var in "$@"
do
open -a iTerm ~/code/tidelift/$var open -a iTerm ~/code/tidelift/$var
settitle $var settitle $var
done done

File diff suppressed because it is too large Load Diff

View File

@ -1,16 +1,8 @@
alias cat='bat' alias cat='batcat'
alias cprm='git remote get-url origin | tr -d "\n" | pbcopy' alias dots='cd ~/code/dotfiles/'
alias dcomp="docker compose"
alias docker-compose="docker compose"
alias dots='cd ~/code/tyrel.dev/dotfiles/'
alias fuckingip="curl https://wtfismyip.com/json" alias fuckingip="curl https://wtfismyip.com/json"
alias g='git' alias g='git'
alias gcd='cd $(git rev-parse --show-toplevel)'
alias gp='git push -u' alias gp='git push -u'
alias ls="eza -lhgxUm --git --time-style long-iso --group-directories-first" alias ls="exa -lhFgxUm --git --time-style long-iso --group-directories-first"
alias lzd='lazydocker'
alias tree=tree -I 'node_modules|venv'
alias vim=nvim
alias vimini="vim ~/.config/nvim/init.vim" alias vimini="vim ~/.config/nvim/init.vim"
alias wx="curl https://wttr.in/Raleigh" alias vim=nvim
alias tf0="tail -n0 -f"

View File

@ -1,8 +0,0 @@
source ~/.shell_funcs
source ~/.shell_aliases
source ~/.shell_exports
command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init -)"
eval "$(direnv hook zsh)"

View File

@ -1,13 +0,0 @@
export ANDROID_NDK_HOME="$HOMEBREW_PREFIX/share/android-ndk"
export BAT_THEME="Dracula"
export EDITOR=nvim
export GPG_TTY=$(tty)
export PYENV_ROOT="$HOME/.pyenv"
export VISUAL=nvim
export WORKON_HOME=~/rl/_envs/
# KEEP LAST
export PATH=/Users/tyrel/bin/:$PATH

View File

@ -1,4 +1,6 @@
#!/bin/bash #!/bin/bash
export EDITOR=nvim
export VISUAL=nvim
# Functions # Functions
function httpdiff () { function httpdiff () {
@ -35,6 +37,3 @@ function new_dock_space (){
} }
function agr (){
ag -0 -l "$1" | xargs -0 perl -pi.bak -e "s/$1/$2/g";
}

View File

@ -1 +0,0 @@
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOiEgzOxE5fmvUIxmigwsvmm5kcDKrHRzbFH31UEU7bm tyrel@tyrel-nixos

25
home/wezterm.lua Normal file
View File

@ -0,0 +1,25 @@
local wezterm = require 'wezterm'
-- This table will hold the configuration.
local config = {}
-- In newer versions of wezterm, use the config_builder which will
-- help provide clearer error messages
if wezterm.config_builder then
config = wezterm.config_builder()
end
-- This is where you actually apply your config choices
-- For example, changing the color scheme:
config.color_scheme = 'Jellybeans (Gogh)'
config.font = wezterm.font_with_fallback {
'IosevkaTerm Nerd Font',
}
config.font_size = 13
config.hide_tab_bar_if_only_one_tab = true
-- and finally, return the configuration to wezterm
return config

View File

@ -1,7 +1,4 @@
nitch
autoload -Uz promptinit autoload -Uz promptinit
promptinit promptinit
prompt adam2 prompt steeef
source ~/.shell_aliases
source ~/.shell_funcs
source ~/.shell_base

10
hosts/_common/fonts.nix Normal file
View File

@ -0,0 +1,10 @@
{ pkgs, config, lib, ... }:
{
fonts.fonts = with pkgs; [
noto-fonts
dejavu_fonts
nerdfonts # Includes font-awesome, material-icons, powerline-fonts
iosevka
];
}

4
hosts/_common/home.nix Normal file
View File

@ -0,0 +1,4 @@
{ pkgs, ... }:
{
home.stateVersion = "22.05";
}

View File

@ -0,0 +1,4 @@
{ pkgs, ... }:
{
programs.home-manager.enable = true;
}

6
hosts/_common/xdg.nix Normal file
View File

@ -0,0 +1,6 @@
{ pkgs, config, ... }:
{
xdg.configFile = {
};
}

View File

@ -0,0 +1,4 @@
{ pkgs, config, lib, ... }:
{
#programs.zsh.enable = true;
}

View File

@ -0,0 +1,64 @@
{
"nodes": {
"home-manager": {
"inputs": {
"nixpkgs": [
"nixpkgs"
],
"utils": "utils"
},
"locked": {
"lastModified": 1672688183,
"narHash": "sha256-3sNEWKTg3XXVDnvzVatdyetiUQWL+ibJ1YkvxSk3PuM=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "c1a830c8fabb13f95f51ecf48552f0a794d8718a",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "home-manager",
"type": "github"
}
},
"nixpkgs": {
"locked": {
"lastModified": 1672525397,
"narHash": "sha256-WASDnyxHKWVrEe0dIzkpH+jzKlCKAk0husv0f/9pyxg=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "8ba56d7c0d7490680f2d51ba46a141eca7c46afa",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"root": {
"inputs": {
"home-manager": "home-manager",
"nixpkgs": "nixpkgs"
}
},
"utils": {
"locked": {
"lastModified": 1667395993,
"narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
}
},
"root": "root",
"version": 7
}

View File

@ -0,0 +1,36 @@
{
description = "Tyrel Nix";
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
home-manager.url = "github:nix-community/home-manager";
home-manager.inputs.nixpkgs.follows = "nixpkgs";
};
outputs = { self, nixpkgs, home-manager } :
let
system = "x86_64-linux";
pkgs = nixpkgs.legacyPackages.${system};
in {
defaultPackage.x86_64-linux = home-manager.defaultPackage.x86_64-linux;
homeConfigurations = {
"tyrel" = home-manager.lib.homeManagerConfiguration {
inherit pkgs;
modules = [
./default.nix
./home-manager.nix
{
home = {
homeDirectory = "/home/tyrel";
username = "tyrel";
stateVersion = "22.05";
};
}
];
};
};
};
}

View File

@ -0,0 +1,15 @@
{ pkgs, ... }:
{
# Common Imports
imports = [
./home.nix
../_common/home.nix
../_common/programs.nix
../_common/xdg.nix
];
home.sessionVariables = {
XDG_CONFIG_HOME = "/home/tyrel/.config";
};
}

View File

@ -0,0 +1,14 @@
{ pkgs, ... }:
{
home.stateVersion = "22.05";
home.sessionVariables = {
};
home.packages = with pkgs; [
maestral
maestral-gui
];
home.file = {
};
}

29
hosts/ts-tl-mbp/brew.nix Normal file
View File

@ -0,0 +1,29 @@
{ pkgs, config, lib, ... }:
{
homebrew = {
enable = true;
casks = [
"alfred"
"affinity-photo"
"affinity-designer"
"affinity-publisher"
"commander-one"
"discord"
"divvy"
"firefox"
"gpg-suite"
"jetbrains-toolbox"
"karabiner-elements"
"meetingbar"
"qsyncthingtray"
"scrivener"
"slack"
"spotify"
"steam"
"syncthing"
"tailscale"
"telegram-desktop"
"thunderbird"
];
};
}

View File

@ -0,0 +1,6 @@
{ pkgs, config, lib, ... }:
{
services.nix-daemon.enable = true;
programs.zsh.enable = true;
system.defaults.dock.autohide = true;
}

View File

@ -0,0 +1,85 @@
{
"nodes": {
"darwin": {
"inputs": {
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1671891118,
"narHash": "sha256-+GJYiT7QbfA306ex4sGMlFB8Ts297pn3OdQ9kTd4aDw=",
"owner": "lnl7",
"repo": "nix-darwin",
"rev": "267040e7a2b8644f1fdfcf57b7e808c286dbdc7b",
"type": "github"
},
"original": {
"owner": "lnl7",
"repo": "nix-darwin",
"type": "github"
}
},
"home-manager": {
"inputs": {
"nixpkgs": [
"nixpkgs"
],
"utils": "utils"
},
"locked": {
"lastModified": 1672688183,
"narHash": "sha256-3sNEWKTg3XXVDnvzVatdyetiUQWL+ibJ1YkvxSk3PuM=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "c1a830c8fabb13f95f51ecf48552f0a794d8718a",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "home-manager",
"type": "github"
}
},
"nixpkgs": {
"locked": {
"lastModified": 1672600835,
"narHash": "sha256-PCrIP7joW/SaDYbKlZGV44bBcLOXI/woLVnVHwcJlWc=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "fe1c6a5547c10a5f6b6debb22d548017f7e14263",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixpkgs-22.11-darwin",
"repo": "nixpkgs",
"type": "github"
}
},
"root": {
"inputs": {
"darwin": "darwin",
"home-manager": "home-manager",
"nixpkgs": "nixpkgs"
}
},
"utils": {
"locked": {
"lastModified": 1667395993,
"narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
}
},
"root": "root",
"version": 7
}

29
hosts/ts-tl-mbp/flake.nix Normal file
View File

@ -0,0 +1,29 @@
{
description = "Tyrel Nix";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-22.11-darwin";
home-manager.url = "github:nix-community/home-manager";
home-manager.inputs.nixpkgs.follows = "nixpkgs";
darwin.url = "github:lnl7/nix-darwin";
darwin.inputs.nixpkgs.follows = "nixpkgs";
};
outputs = { self, nixpkgs, home-manager, darwin }: {
defaultPackage.x86_64-darwin = home-manager.defaultPackage.x86_64-darwin;
darwinConfigurations."ts-tl-mbp" = darwin.lib.darwinSystem {
system = "x86_64-darwin";
modules = [
home-manager.darwinModules.home-manager
./default.nix
./home-manager.nix
./brew.nix
../_common/fonts.nix
];
};
nixpkgs.config = {
allowUnfree = true;
};
};
}

View File

@ -0,0 +1,24 @@
{ pkgs, ... }:
{
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.users.tyrel = { pkgs, ... }: {
# Common Imports
imports = [
./home.nix
../_common/home.nix
../_common/programs.nix
../_common/xdg.nix
];
home.sessionVariables = {
XDG_CONFIG_HOME = "/Users/tyrel/.config";
};
# XDG CONFIGS
xdg.configFile."karabiner" = {
source = ../../home/config/karabiner;
recursive = true;
};
}; # -- HomeManager
}

12
hosts/ts-tl-mbp/home.nix Normal file
View File

@ -0,0 +1,12 @@
{ pkgs, ... }:
{
home.stateVersion = "22.05";
home.sessionVariables = {
};
home.packages = with pkgs; [
];
home.file = {
};
}

View File

@ -0,0 +1,4 @@
{ pkgs, config, lib, ... }:
{
programs.zsh.enable = true;
}

View File

@ -0,0 +1,64 @@
{
"nodes": {
"home-manager": {
"inputs": {
"nixpkgs": [
"nixpkgs"
],
"utils": "utils"
},
"locked": {
"lastModified": 1672688183,
"narHash": "sha256-3sNEWKTg3XXVDnvzVatdyetiUQWL+ibJ1YkvxSk3PuM=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "c1a830c8fabb13f95f51ecf48552f0a794d8718a",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "home-manager",
"type": "github"
}
},
"nixpkgs": {
"locked": {
"lastModified": 1672525397,
"narHash": "sha256-WASDnyxHKWVrEe0dIzkpH+jzKlCKAk0husv0f/9pyxg=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "8ba56d7c0d7490680f2d51ba46a141eca7c46afa",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"root": {
"inputs": {
"home-manager": "home-manager",
"nixpkgs": "nixpkgs"
}
},
"utils": {
"locked": {
"lastModified": 1667395993,
"narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
}
},
"root": "root",
"version": 7
}

View File

@ -0,0 +1,36 @@
{
description = "Tyrel Nix";
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
home-manager.url = "github:nix-community/home-manager";
home-manager.inputs.nixpkgs.follows = "nixpkgs";
};
outputs = { self, nixpkgs, home-manager } :
let
system = "x86_64-linux";
pkgs = nixpkgs.legacyPackages.${system};
in {
defaultPackage.x86_64-linux = home-manager.defaultPackage.x86_64-linux;
homeConfigurations = {
"tyrel" = home-manager.lib.homeManagerConfiguration {
inherit pkgs;
modules = [
./default.nix
./home-manager.nix
{
home = {
homeDirectory = "/home/tyrel";
username = "tyrel";
stateVersion = "22.05";
};
}
];
};
};
};
}

View File

@ -0,0 +1,15 @@
{ pkgs, ... }:
{
# Common Imports
imports = [
./home.nix
../_common/home.nix
../_common/programs.nix
../_common/xdg.nix
];
home.sessionVariables = {
XDG_CONFIG_HOME = "/home/tyrel/.config";
};
}

View File

@ -0,0 +1,12 @@
{ pkgs, ... }:
{
home.stateVersion = "22.05";
home.sessionVariables = {
};
home.packages = with pkgs; [
];
home.file = {
};
}

View File

@ -0,0 +1,4 @@
{ pkgs, config, lib, ... }:
{
#programs.zsh.enable = true;
}

View File

@ -0,0 +1,64 @@
{
"nodes": {
"home-manager": {
"inputs": {
"nixpkgs": [
"nixpkgs"
],
"utils": "utils"
},
"locked": {
"lastModified": 1672688183,
"narHash": "sha256-3sNEWKTg3XXVDnvzVatdyetiUQWL+ibJ1YkvxSk3PuM=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "c1a830c8fabb13f95f51ecf48552f0a794d8718a",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "home-manager",
"type": "github"
}
},
"nixpkgs": {
"locked": {
"lastModified": 1672525397,
"narHash": "sha256-WASDnyxHKWVrEe0dIzkpH+jzKlCKAk0husv0f/9pyxg=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "8ba56d7c0d7490680f2d51ba46a141eca7c46afa",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"root": {
"inputs": {
"home-manager": "home-manager",
"nixpkgs": "nixpkgs"
}
},
"utils": {
"locked": {
"lastModified": 1667395993,
"narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
}
},
"root": "root",
"version": 7
}

View File

@ -0,0 +1,36 @@
{
description = "Tyrel Nix";
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
home-manager.url = "github:nix-community/home-manager";
home-manager.inputs.nixpkgs.follows = "nixpkgs";
};
outputs = { self, nixpkgs, home-manager } :
let
system = "x86_64-linux";
pkgs = nixpkgs.legacyPackages.${system};
in {
defaultPackage.x86_64-linux = home-manager.defaultPackage.x86_64-linux;
homeConfigurations = {
"tyrel" = home-manager.lib.homeManagerConfiguration {
inherit pkgs;
modules = [
./default.nix
./home-manager.nix
{
home = {
homeDirectory = "/home/tyrel";
username = "tyrel";
stateVersion = "22.05";
};
}
];
};
};
};
}

View File

@ -0,0 +1,15 @@
{ pkgs, ... }:
{
# Common Imports
imports = [
./home.nix
../_common/home.nix
../_common/programs.nix
../_common/xdg.nix
];
home.sessionVariables = {
XDG_CONFIG_HOME = "/home/tyrel/.config";
};
}

View File

@ -0,0 +1,12 @@
{ pkgs, ... }:
{
home.stateVersion = "22.05";
home.sessionVariables = {
};
home.packages = with pkgs; [
];
home.file = {
};
}

101
justfile
View File

@ -6,59 +6,70 @@ OS := if "${HOME}" =~ '/U.*' {
} else { } else {
if `cat /etc/issue 2>/dev/null || true` =~ "Deb.*" { "debian" } else { "ubuntu" } if `cat /etc/issue 2>/dev/null || true` =~ "Deb.*" { "debian" } else { "ubuntu" }
} }
PWD := `pwd` HOSTNAME := `hostname| sed 's/.local//'`
USER := "tyrel" NIXPATH := "nixpkgs=/nix/var/nix/profiles/per-user/tyrel/channels/nixpkgs:/nix/var/nix/profiles/per-user/tyrel/channels"
HOME := "/home/tyrel"
pwd: setup:
echo "{{PWD}}" just setup-{{OS}}
setup-ubuntu:
NIX_PATH={{NIXPATH}} nix-channel --add https://nixos.org/channels/nixos-22.11 nixos
NIX_PATH={{NIXPATH}} nix-channel --add https://github.com/nix-community/home-manager/archive/release-22.11.tar.gz home-manager
NIX_PATH={{NIXPATH}} nix-channel --add https://channels.nixos.org/nixos-22.11 nixpkgs
NIX_PATH={{NIXPATH}} nix-channel --update
NIX_PATH={{NIXPATH}} nix-shell '<home-manager>' -A install
update-hm:
NIX_PATH={{NIXPATH}} nix-shell '<home-manager>' -A update
setup-debian:
NIX_PATH={{NIXPATH}} nix-channel --add https://nixos.org/channels/nixos-22.11 nixos
NIX_PATH={{NIXPATH}} nix-channel --add https://github.com/nix-community/home-manager/archive/release-22.11.tar.gz home-manager
NIX_PATH={{NIXPATH}} nix-channel --add https://channels.nixos.org/nixos-22.11 nixpkgs
NIX_PATH={{NIXPATH}} nix-channel --update
NIX_PATH={{NIXPATH}} nix-shell '<home-manager>' -A install
experimental:
mkdir -p ~/.config/nix
echo "extra-experimental-features = flakes nix-command" ~/.config/nix/nix.conf
git-add: git-add:
git add . git add .
rust: update: update-neovim
curl https://sh.rustup.rs -sSf | sh
pyenv: update-os:
sudo curl https://pyenv.run | bash sudo nixos-rebuild switch
echo 'export PYENV_ROOT="/home/$USER/.pyenv"' >> /home/$USER/.bashrc
echo '[[ -d $PYENV_ROOT/bin ]] && export PATH="$PYENV_ROOT/bin:$PATH"' >> /home/$USER/.bashrc
echo 'eval "$(pyenv init -)"' >> /home/$USER/.bashrc
pyenv install 3.12.3
pyenv global 3.12.3
reset-symlinks: update-neovim:
rm /home/{{USER}}/.config/nvim nvim --headless -c 'autocmd User PackerComplete quitall' -c 'PackerSync'
rm /home/{{USER}}/bin
rm /home/{{USER}}/.gitconfig
rm /home/{{USER}}/.shell_base
rm /home/{{USER}}/.p10k.zsh
rm /home/{{USER}}/.shell_aliases
rm /home/{{USER}}/.shell_funcs
rm /home/{{USER}}/.shell_exports
symlinks: pi:
ln -s {{PWD}}/home/gitconfig /home/{{USER}}/.gitconfig nvim --headless -c 'autocmd User PackerComplete quitall' -c 'PackerInstall'
ln -s {{PWD}}/home/shell_base /home/{{USER}}/.shell_base
ln -s {{PWD}}/home/p10k.zsh /home/{{USER}}/.p10k.zsh
ln -s {{PWD}}/home/shell_aliases /home/{{USER}}/.shell_aliases
ln -s {{PWD}}/home/shell_funcs /home/{{USER}}/.shell_funcs
ln -s {{PWD}}/home/shell_exports /home/{{USER}}/.shell_exports
ln -s {{PWD}}/home/bin /home/{{USER}}
ln -s {{PWD}}/home/config/nvim /home/{{USER}}/.config/
echo "source ~/.shell_base" >> ~/.bashrc
echo "source ~/.shell_base" >> ~/.zshrc
debian: rust pyenv symlinks sync:
sudo apt-get install software-properties-common sudo nix-channel --update
sudo add-apt-repository -y ppa:neovim-ppa/unstable nix-channel --update
sudo apt update
sudo apt-get install -y libncurses5-dev neovim
sudo apt-get install -y build-essential zlib1g-dev libffi-dev libssl-dev libbz2-dev libreadline-dev libsqlite3-dev liblzma-dev
sudo apt-get install -y git-lfs
arch: rust pyenv symlinks clean:
sudo pacman -S git git-lfs ctags rofi terminator tint2 tree-sitter unzip cpan base-devel bat exa nitch nix-collect-garbage --delete-older-than 7d
home-manager expire-generations "-7 days"
ssh-keys: vimpacker:
cat home/ssh/*.pub > ~/.ssh/authorized_keys git clone --depth 1 https://github.com/wbthomason/packer.nvim ~/.local/share/nvim/site/pack/packer/start/packer.nvim
rebuild: git-add
just rebuild-{{OS}}
rebuild-macos:
./result/sw/bin/darwin-rebuild switch --flake ./hosts/{{HOSTNAME}}
rebuild-ubuntu:
NIX_PATH={{NIXPATH}} nix run ./hosts/{{HOSTNAME}} switch -vv
NIX_PATH={{NIXPATH}} home-manager switch --flake ./hosts/{{HOSTNAME}}
just clean
rebuild-debian:
NIX_PATH={{NIXPATH}} nix run ./hosts/{{HOSTNAME}} switch -vv
NIX_PATH={{NIXPATH}} home-manager switch --flake ./hosts/{{HOSTNAME}}
just clean