mirror of
https://github.com/nikdoof/dotfiles.git
synced 2026-01-30 19:08:16 +00:00
Compare commits
20 Commits
8bfd35dd8d
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e9e9b10165 | ||
|
a9c028f7df
|
|||
|
|
c85ccc3d6f | ||
|
213d5a306b
|
|||
|
|
678a487ef8 | ||
|
|
e0cfc2654c | ||
|
12590e3547
|
|||
|
a57503f372
|
|||
|
c88d401471
|
|||
|
a4d55ff664
|
|||
|
53be68450e
|
|||
|
|
8c013bb66c | ||
|
|
cbc7e5fe81 | ||
|
|
bcaf15a2db | ||
|
|
e02f4eb767 | ||
|
fb18cefe7a
|
|||
|
57317f8c74
|
|||
|
d5ea661a87
|
|||
|
|
36a81735e3 | ||
|
|
4a589b902a |
3
.gitmodules
vendored
3
.gitmodules
vendored
@@ -1,3 +0,0 @@
|
||||
[submodule "tmux/.tmux/plugins/tpm"]
|
||||
path = tmux/.tmux/plugins/tpm
|
||||
url = https://github.com/tmux-plugins/tpm
|
||||
15
README.md
15
README.md
@@ -1,11 +1,20 @@
|
||||
## Dotfiles
|
||||
# .dotfiles
|
||||
|
||||
A collection of dotfiles used by [nikdoof](https://github.com/nikdoof)
|
||||
|
||||
## Linux / macOS
|
||||
## Used Tools
|
||||
* [Aerospace](https://nikitabobko.github.io/AeroSpace/guide)
|
||||
* [Jankyborders](https://github.com/FelixKratz/JankyBorders)
|
||||
* [Ghostty](https://ghostty.org)
|
||||
* [Starship](https://starship.rs)
|
||||
* [Zed](https://zed.dev)
|
||||
|
||||
## Installation
|
||||
|
||||
### Linux / macOS
|
||||
|
||||
Installation is handled by `stowage`. 'Github' SSH key from private dotfiles required to run successfully.
|
||||
|
||||
```
|
||||
```shell-session
|
||||
curl https://raw.githubusercontent.com/nikdoof/dotfiles/main/bootstrap.sh | bash
|
||||
```
|
||||
|
||||
@@ -194,12 +194,7 @@ on-mode-changed = []
|
||||
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.
|
||||
@@ -240,7 +235,7 @@ run = 'move-node-to-workspace B'
|
||||
# VSCode windows to workspace C
|
||||
[[on-window-detected]]
|
||||
if.app-id = 'com.microsoft.VSCode'
|
||||
run = 'move-node-to-workspace C'
|
||||
run = ['move-node-to-workspace C', 'layout v_accordion']
|
||||
|
||||
# Zed settings windows float
|
||||
[[on-window-detected]]
|
||||
@@ -252,7 +247,7 @@ check-further-callbacks = false
|
||||
# Zed windows to workspace C
|
||||
[[on-window-detected]]
|
||||
if.app-id = 'dev.zed.Zed'
|
||||
run = 'move-node-to-workspace C'
|
||||
run = ['move-node-to-workspace C', 'layout v_accordion']
|
||||
|
||||
# Ghostty terminal windows to workspace T
|
||||
[[on-window-detected]]
|
||||
@@ -262,12 +257,12 @@ run = 'move-node-to-workspace T'
|
||||
# Finder windows float
|
||||
[[on-window-detected]]
|
||||
if.app-id = 'com.apple.finder'
|
||||
run = ['layout floating']
|
||||
run = ['move-node-to-workspace F']
|
||||
|
||||
# Telegram windows float
|
||||
[[on-window-detected]]
|
||||
if.app-name-regex-substring = 'telegram'
|
||||
run = 'layout floating'
|
||||
run = ['move-node-to-workspace S', 'layout v_accordion']
|
||||
|
||||
# Activity Monitor windows float
|
||||
[[on-window-detected]]
|
||||
@@ -316,3 +311,25 @@ run = 'layout floating'
|
||||
[[on-window-detected]]
|
||||
if.app-id = 'com.coconut-flavour.coconutBattery'
|
||||
run = 'layout floating'
|
||||
|
||||
# Float the main window of Windows App
|
||||
[[on-window-detected]]
|
||||
if.app-id = 'com.microsoft.rdc.macos'
|
||||
if.window-title-regex-substring = 'Devices'
|
||||
run = ['move-node-to-workspace R', 'layout floating']
|
||||
check-further-callbacks = false
|
||||
|
||||
# Accordian the connection windows
|
||||
[[on-window-detected]]
|
||||
if.app-id = 'com.microsoft.rdc.macos'
|
||||
run = ['move-node-to-workspace R', 'layout v_accordion']
|
||||
|
||||
# Float DaisyDisk windows
|
||||
[[on-window-detected]]
|
||||
if.app-id = 'com.daisydiskapp.DaisyDiskStandAlone'
|
||||
run = ['layout floating']
|
||||
|
||||
# Float Compressor windows
|
||||
[[on-window-detected]]
|
||||
if.app-id = 'com.apple.CompressorApp'
|
||||
run = ['layout floating']
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
# shellcheck shell=bash
|
||||
# History
|
||||
mkdir -p "${XDG_STATE_HOME}"/bash
|
||||
export HISTFILE="${XDG_STATE_HOME}"/bash/history
|
||||
|
||||
@@ -1,2 +1,3 @@
|
||||
# shellcheck shell=bash
|
||||
# SSH completion based on ssh config
|
||||
[ -e "$HOME/.ssh/config" ] && complete -o "default" -o "nospace" -W "$(grep "^Host" ~/.ssh/config* | grep -v "[?*]" | cut -d " " -f2- | tr ' ' '\n')" scp sftp ssh
|
||||
|
||||
@@ -7,6 +7,7 @@ window-save-state = never
|
||||
window-new-tab-position = end
|
||||
theme = Nord
|
||||
font-family = JetBrainsMono Nerd Font
|
||||
background-opacity = 0.95
|
||||
|
||||
# Handled via Brew
|
||||
auto-update = off
|
||||
|
||||
Binary file not shown.
@@ -10,6 +10,7 @@ tap "nikitabobko/tap"
|
||||
tap "terraform-docs/tap"
|
||||
tap "sass/sass"
|
||||
tap "setchy/brews"
|
||||
tap "nikdoof/tap"
|
||||
|
||||
# Formulae
|
||||
brew "awscli"
|
||||
@@ -38,6 +39,7 @@ brew "kubernetes-cli"
|
||||
brew "kubeseal"
|
||||
brew "localstack/tap/localstack-cli"
|
||||
brew "mas"
|
||||
brew "nikdoof/tap/nikdoof-lsq"
|
||||
brew "node"
|
||||
brew "php"
|
||||
brew "poetry"
|
||||
@@ -51,6 +53,7 @@ brew "starship"
|
||||
brew "terraform-docs"
|
||||
brew "terraform-local"
|
||||
brew "tflint"
|
||||
brew "tlrc"
|
||||
brew "tz"
|
||||
brew "uv"
|
||||
brew "yazi"
|
||||
|
||||
16
macos/.config/shell-common/98_theme.sh
Normal file
16
macos/.config/shell-common/98_theme.sh
Normal file
@@ -0,0 +1,16 @@
|
||||
# Set themes for various CLI apps to match our terminal settings
|
||||
# Theme flavour of the month: Nord
|
||||
|
||||
# Bat
|
||||
if [ -x "$(command -v bat)" ]; then
|
||||
export BAT_THEME="Nord"
|
||||
fi
|
||||
|
||||
# Fzf
|
||||
if [ -x "$(command -v bat)" ]; then
|
||||
export FZF_DEFAULT_OPTS='
|
||||
--color=fg:#e5e9f0,bg:#2E3440,hl:#81a1c1
|
||||
--color=fg+:#e5e9f0,bg+:#2E3440,hl+:#81a1c1
|
||||
--color=info:#eacb8a,prompt:#bf6069,pointer:#b48dac
|
||||
--color=marker:#a3be8b,spinner:#b48dac,header:#a3be8b'
|
||||
fi
|
||||
@@ -138,5 +138,10 @@ f() {
|
||||
# Search for a file using macOS Spotlight
|
||||
# https://natelandau.com/my-mac-os-zsh-profile/
|
||||
spotlight() {
|
||||
mdfind "kMDItemDisplayName == '${1}'wc"
|
||||
mdfind "kMDItemDisplayName == '${1}'wc" | fzf --preview 'fzf-preview.sh {}' --height 40%
|
||||
}
|
||||
|
||||
# Provide default args to LSQ
|
||||
if [ -x "$(command -v lsq)" ]; then
|
||||
alias lsq='lsq -d $HOME/Documents/Logseq/PKM/'
|
||||
fi
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
# shellcheck shell=bash
|
||||
# Override application locations to fix XDG
|
||||
export ANSIBLE_HOME="$XDG_DATA_HOME"/ansible
|
||||
export LESSHISTFILE="$XDG_STATE_HOME"/less/history
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
# shellcheck shell=bash
|
||||
# AWS functions
|
||||
|
||||
# Get the list of AWS profiles
|
||||
function awsprofiles() {
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
# shellcheck shell=bash
|
||||
# Go stuff
|
||||
|
||||
export GOPATH=$XDG_DATA_HOME/go/
|
||||
export PATH=${GOPATH}bin:$PATH
|
||||
if [ -z ${GOROOT+x} ] && [ -d /usr/local/go ]; then
|
||||
|
||||
@@ -1,2 +1,4 @@
|
||||
# shellcheck shell=bash
|
||||
# Python stuff
|
||||
|
||||
export POETRY_VIRTUALENVS_IN_PROJECT=true
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
# shellcheck shell=bash
|
||||
# Rust stuff
|
||||
|
||||
if [ -f $HOME/.cargo/env ]; then
|
||||
source $HOME/.cargo/env
|
||||
fi
|
||||
|
||||
@@ -6,16 +6,22 @@ format = """
|
||||
[](nord10)\
|
||||
$os\
|
||||
$username[@](bg:nord10 fg:nord0)$hostname\
|
||||
[](bg:nord9 fg:nord10)\
|
||||
[](bg:nord9 fg:nord10)\
|
||||
$directory\
|
||||
[](bg:nord8 fg:nord9)\
|
||||
$git_branch$git_commit$git_state$git_metrics$git_status\
|
||||
[](bg:nord7 fg:nord8)\
|
||||
$package$c$cmake$cobol$daml$dart$deno$dotnet$elixir$elm$erlang$fennel$gleam\
|
||||
$golang$guix_shell$haskell$haxe$helm$java$julia$kotlin$gradle$lua$nim$nodejs\
|
||||
$ocaml$opa$perl$php$pulumi$purescript$python$quarto$raku$rlang$red$ruby$rust\
|
||||
$scala$solidity$swift$terraform$typst$vlang$vagrant$zig$aws\
|
||||
[](bg:bg fg:nord7)\
|
||||
[](bg:nord8 fg:nord9)\
|
||||
$git_branch$git_commit\
|
||||
[](bg:nord7 fg:nord8)\
|
||||
$package\
|
||||
$golang\
|
||||
$nodejs\
|
||||
$php\
|
||||
$python\
|
||||
$rust\
|
||||
$terraform\
|
||||
$aws\
|
||||
[](bg:nord4 fg:nord7)\
|
||||
$cmd_duration\
|
||||
[](fg:#d9dee9)\
|
||||
$line_break\
|
||||
$character
|
||||
"""
|
||||
@@ -81,6 +87,7 @@ disabled = true
|
||||
[package]
|
||||
format = "[ $version ]($style)"
|
||||
style = "fg:nord0 bg:nord7"
|
||||
disabled = true
|
||||
|
||||
# Languages
|
||||
|
||||
@@ -99,14 +106,25 @@ symbol = 'go'
|
||||
format = "[ $symbol($version )]($style)"
|
||||
style = "fg:nord0 bg:nord7"
|
||||
|
||||
[nodejs]
|
||||
symbol = ' '
|
||||
format = "[ $symbol($version )]($style)"
|
||||
style = "fg:nord0 bg:nord7"
|
||||
|
||||
[php]
|
||||
symbol = ' '
|
||||
format = "[ $symbol($version )]($style)"
|
||||
style = "fg:nord0 bg:nord7"
|
||||
|
||||
[terraform]
|
||||
symbol = ' '
|
||||
format = "[ $symbol($version )]($style)"
|
||||
style = "fg:nord0 bg:nord7"
|
||||
disabled = false
|
||||
|
||||
# MISC
|
||||
# ====
|
||||
[cmd_duration]
|
||||
format = "[ $duration ]($style)"
|
||||
style = "fg:#2e3440 bg:#d9dee9"
|
||||
|
||||
[hostname]
|
||||
ssh_only = false
|
||||
@@ -129,6 +147,12 @@ format = "[ $path ]($style)[$read_only]($read_only_style)"
|
||||
read_only_style = "fg:nord0 bold bg:nord9"
|
||||
|
||||
[character]
|
||||
success_symbol = "[ >](bold green)"
|
||||
error_symbol = "[ >](bold red)"
|
||||
success_symbol = "[ »](bold green)"
|
||||
error_symbol = "[ »](bold red)"
|
||||
vimcmd_symbol = "[ >](bold green)"
|
||||
|
||||
[time]
|
||||
disabled = false
|
||||
format = " [$time]($style) "
|
||||
style = "bold fg:nord2"
|
||||
time_format = "%R"
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
# List of plugins
|
||||
set -g @plugin 'tmux-plugins/tpm'
|
||||
set -g @plugin 'tmux-plugins/tmux-sensible'
|
||||
set -g @plugin 'ndyakov/pimux'
|
||||
|
||||
# Other examples:
|
||||
# set -g @plugin 'github_username/plugin_name'
|
||||
# set -g @plugin 'git@github.com:user/plugin'
|
||||
# set -g @plugin 'git@bitbucket.com:user/plugin'
|
||||
|
||||
# Initialize TMUX plugin manager (keep this line at the very bottom of tmux.conf)
|
||||
run -b '~/.tmux/plugins/tpm/tpm'
|
||||
1
tmux/.tmux/plugins/.gitignore
vendored
1
tmux/.tmux/plugins/.gitignore
vendored
@@ -1 +0,0 @@
|
||||
*
|
||||
Submodule tmux/.tmux/plugins/tpm deleted from 5c4f37a52d
@@ -40,9 +40,9 @@
|
||||
"agent": {
|
||||
"default_model": {
|
||||
"provider": "copilot_chat",
|
||||
"model": "claude-sonnet-4",
|
||||
"model": "claude-sonnet-4.5",
|
||||
},
|
||||
"always_allow_tool_actions": false,
|
||||
"always_allow_tool_actions": true,
|
||||
"enabled": true,
|
||||
"button": true,
|
||||
"model_parameters": [],
|
||||
@@ -148,6 +148,8 @@
|
||||
|
||||
"project_panel": {
|
||||
"entry_spacing": "standard",
|
||||
"hide_root": false,
|
||||
"default_width": 400,
|
||||
},
|
||||
"toolbar": {
|
||||
"breadcrumbs": false,
|
||||
@@ -166,4 +168,12 @@
|
||||
"diagnostics": false,
|
||||
"metrics": false,
|
||||
},
|
||||
"title_bar": {
|
||||
"show_onboarding_banner": false,
|
||||
"show_user_picture": false,
|
||||
"show_branch_icon": true,
|
||||
},
|
||||
"file_finder": {
|
||||
"modal_max_width": "medium",
|
||||
},
|
||||
}
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
# shellcheck shell=zsh
|
||||
# History
|
||||
mkdir -p "${XDG_STATE_HOME}/zsh"
|
||||
HISTFILE="${XDG_STATE_HOME}/zsh/history"
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
# shellcheck shell=zsh
|
||||
# Zsh specific aliases
|
||||
# Mostly suffix and global aliases
|
||||
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
# shellcheck shell=zsh
|
||||
fpath+=($XDG_CONFIG_HOME/zsh/completions)
|
||||
|
||||
autoload -Uz compinit
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
# shellcheck shell=zsh
|
||||
# Source shell common
|
||||
for f in ~/.config/shell-common/*.sh; do
|
||||
source $f
|
||||
|
||||
Reference in New Issue
Block a user