diff --git a/README.md b/README.md index ec3b710..63f286d 100644 --- a/README.md +++ b/README.md @@ -2,3 +2,14 @@ Dotfiles ======== A collection of dotfiles used by [nikdoof](https://github.com/nikdoof) + +Linux +----- + +Installation is handled by `stow`. + + +Windows +------- + +Installation is managed by [PSDotFiles](https://github.com/ralish/PSDotFiles). Which can be easily installed from the PSGallery (check bootstrap.ps1) diff --git a/metadata/README.md b/metadata/README.md new file mode 100644 index 0000000..4109bcd --- /dev/null +++ b/metadata/README.md @@ -0,0 +1,4 @@ +PSDotFiles Metadata +------------------- + +This folder contains the metadata for PSDotFiles and isn't a stow package. \ No newline at end of file diff --git a/metadata/bash.xml b/metadata/bash.xml new file mode 100644 index 0000000..ddb26b1 --- /dev/null +++ b/metadata/bash.xml @@ -0,0 +1,9 @@ + + + Bash Profile + + + Static + NeverInstall + + \ No newline at end of file diff --git a/metadata/bin.xml b/metadata/bin.xml new file mode 100644 index 0000000..4b30681 --- /dev/null +++ b/metadata/bin.xml @@ -0,0 +1,9 @@ + + + Linux ~/bin scripts + + + Static + NeverInstall + + \ No newline at end of file diff --git a/metadata/gpg.xml b/metadata/gpg.xml new file mode 100644 index 0000000..24b6687 --- /dev/null +++ b/metadata/gpg.xml @@ -0,0 +1,13 @@ + + + GPG + .gnupg + + FindInPath + gpg.exe + + + ApplicationData + gnupg + + \ No newline at end of file diff --git a/metadata/irssi.xml b/metadata/irssi.xml new file mode 100644 index 0000000..f674bbf --- /dev/null +++ b/metadata/irssi.xml @@ -0,0 +1,9 @@ + + + IRSSI + + + Static + NeverInstall + + \ No newline at end of file diff --git a/metadata/mutt.xml b/metadata/mutt.xml new file mode 100644 index 0000000..06c8d40 --- /dev/null +++ b/metadata/mutt.xml @@ -0,0 +1,9 @@ + + + Mutt + + + Static + NeverInstall + + \ No newline at end of file diff --git a/metadata/ssh.xml b/metadata/ssh.xml new file mode 100644 index 0000000..c15bb60 --- /dev/null +++ b/metadata/ssh.xml @@ -0,0 +1,8 @@ + + + SSH + + + FindInPath + + \ No newline at end of file diff --git a/metadata/tmux.xml b/metadata/tmux.xml new file mode 100644 index 0000000..e2a8fe2 --- /dev/null +++ b/metadata/tmux.xml @@ -0,0 +1,9 @@ + + + Tmux + + + Static + NeverInstall + + \ No newline at end of file diff --git a/metadata/winterm.xml b/metadata/winterm.xml new file mode 100644 index 0000000..67fea09 --- /dev/null +++ b/metadata/winterm.xml @@ -0,0 +1,14 @@ + + + Windows Terminal + + + Automatic + Microsoft.WindowsTerminal + + + + LocalApplicationData + Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\LocalState + + \ No newline at end of file diff --git a/posh/bootstrap.ps1 b/posh/bootstrap.ps1 index acf7171..0ba8fd6 100644 --- a/posh/bootstrap.ps1 +++ b/posh/bootstrap.ps1 @@ -1,4 +1,10 @@ +# Install required modules Install-Module posh-git -Scope CurrentUser Install-Module oh-my-posh -Scope CurrentUser -Install-Module -Name PSDotFiles -Scope CurrentUser \ No newline at end of file +Install-Module -Name PSDotFiles -Scope CurrentUser + +# Fix git, SSH and GPG to external executables +[Environment]::SetEnvironmentVariable('GIT_SSH', "$ENV:SystemRoot\System32\OpenSSH\ssh.exe", 'User') +[Environment]::SetEnvironmentVariable('GNUPGHOME', "$ENV:APPDATA\gnupg", 'User') +Invoke-Expression "git config --global gpg.program '/c/Program Files (x86)/GnuPG/bin/gpg.exe'" \ No newline at end of file diff --git a/winterm/settings.json b/winterm/settings.json new file mode 100644 index 0000000..e28bf3c --- /dev/null +++ b/winterm/settings.json @@ -0,0 +1,114 @@ +// This file was initially generated by Windows Terminal 1.0.1401.0 +// It should still be usable in newer versions, but newer versions might have additional +// settings, help text, or changes that you will not see unless you clear this file +// and let us generate a new one for you. +// To view the default settings, hold "alt" while clicking on the "Settings" button. +// For documentation on these settings, see: https://aka.ms/terminal-documentation +{ + "$schema": "https://aka.ms/terminal-profiles-schema", + "defaultProfile": "{61c54bbd-c2c6-5271-96e7-009a87ff44bf}", + // You can add more global application settings here. + // To learn more about global settings, visit https://aka.ms/terminal-global-settings + // If enabled, selections are automatically copied to your clipboard. + "copyOnSelect": true, + // If enabled, formatted data is also copied to your clipboard + "copyFormatting": false, + // A profile specifies a command to execute paired with information about how it should look and feel. + // Each one of them will appear in the 'New Tab' dropdown, + // and can be invoked from the commandline with `wt.exe -p xxx` + // To learn more about profiles, visit https://aka.ms/terminal-profile-settings + "theme": "dark", + "disabledProfileSources": [ + "Windows.Terminal.Azure" + ], + "profiles": { + "defaults": { + "cursorShape": "vintage", + "fontFace": "Input Mono", + "fontSize": 9, + "colorScheme": "Material Palenight" + }, + "list": [ + { + // Make changes here to the powershell.exe profile. + "guid": "{61c54bbd-c2c6-5271-96e7-009a87ff44bf}", + "name": "Windows PowerShell", + "commandline": "powershell.exe", + "hidden": false + }, + { + "name": "Dimension.sh", + "commandline": "ssh dimension.sh", + "hidden": false, + "icon": "%ONEDRIVECOMMERCIAL%/Icons/centos.png" + }, + { + "name": "Kronos", + "commandline": "ssh kronos.home.tensixtyone.com", + "hidden": false, + "icon": "%ONEDRIVECOMMERCIAL%/Icons/centos.png" + } + ] + }, + // Add custom color schemes to this array. + // To learn more about color schemes, visit https://aka.ms/terminal-color-schemes + "schemes": [ + { + "name": "Material Palenight", + "background": "#292D3E", + "foreground": "#959DCB", + "black": "#292D3E", + "red": "#F07178", + "green": "#C3E88D", + "yellow": "#FFCB6B", + "blue": "#82AAFF", + "purple": "#C792EA", + "cyan": "#89DDFF", + "white": "#959DCB", + "brightBlack": "#676E95", + "brightRed": "#e7a9ac", + "brightGreen": "#d6e4c2", + "brightYellow": "#ffe9c2", + "brightBlue": "#c5d7ff", + "brightPurple": "#d7c2e5", + "brightCyan": "#caf0ff", + "brightWhite": "#FFFFFF" + } + ], + // Add custom keybindings to this array. + // To unbind a key combination from your defaults.json, set the command to "unbound". + // To learn more about keybindings, visit https://aka.ms/terminal-keybindings + "keybindings": [ + // Copy and paste are bound to Ctrl+Shift+C and Ctrl+Shift+V in your defaults.json. + // These two lines additionally bind them to Ctrl+C and Ctrl+V. + // To learn more about selection, visit https://aka.ms/terminal-selection + { + "command": { + "action": "copy", + "singleLine": false + }, + "keys": "ctrl+c" + }, + { + "command": "paste", + "keys": "ctrl+v" + }, + // Press Ctrl+Shift+F to open the search box + { + "command": "find", + "keys": "ctrl+shift+f" + }, + // Press Alt+Shift+D to open a new pane. + // - "split": "auto" makes this pane open in the direction that provides the most surface area. + // - "splitMode": "duplicate" makes the new pane use the focused pane's profile. + // To learn more about panes, visit https://aka.ms/terminal-panes + { + "command": { + "action": "splitPane", + "split": "auto", + "splitMode": "duplicate" + }, + "keys": "alt+shift+d" + } + ] +} \ No newline at end of file