🧹 major cleanup. re-thinking this setup
This commit is contained in:
parent
2c63f63de7
commit
8cd3ca08d1
@ -1,6 +0,0 @@
|
||||
bundler
|
||||
cocoapods
|
||||
jekyll
|
||||
homesick
|
||||
rails
|
||||
rubocop
|
@ -1,2 +0,0 @@
|
||||
expo-cli
|
||||
yarn
|
@ -1,6 +0,0 @@
|
||||
flake8
|
||||
pipenv
|
||||
pylint
|
||||
pytest
|
||||
pytest-cache
|
||||
wakatime
|
@ -1 +0,0 @@
|
||||
gem: --no-ri --no-rdoc
|
@ -1,18 +0,0 @@
|
||||
[storage]
|
||||
engine = file_system
|
||||
path = Sync
|
||||
|
||||
directory = Config
|
||||
|
||||
[applications_to_sync]
|
||||
asdf
|
||||
aws
|
||||
emacs-org
|
||||
exercism
|
||||
myrepos
|
||||
ngrok
|
||||
npm
|
||||
ssh
|
||||
|
||||
[applications_to_ignore]
|
||||
gnupg
|
@ -1,6 +0,0 @@
|
||||
[application]
|
||||
name = asdf
|
||||
|
||||
[configuration_files]
|
||||
.asdfrc
|
||||
.tool-versions
|
@ -1,5 +0,0 @@
|
||||
[application]
|
||||
name = emacs-org
|
||||
|
||||
[configuration_files]
|
||||
.org
|
@ -1,5 +0,0 @@
|
||||
[application]
|
||||
name = Exercism
|
||||
|
||||
[configuration_files]
|
||||
.config/exercism/user.json
|
@ -1,3 +0,0 @@
|
||||
\x auto
|
||||
\pset null 'NULL'
|
||||
|
@ -1 +0,0 @@
|
||||
--database=postgresql
|
@ -1,15 +0,0 @@
|
||||
# walkah's screenrc
|
||||
#
|
||||
# $Id: .screenrc,v 1.8 2007-03-30 02:31:27 walkah Exp $
|
||||
|
||||
# no startup message
|
||||
startup_message off
|
||||
|
||||
# i like the caption at the bottom, so i know what screen i'm on
|
||||
caption always "%w %-= %m/%d/%y %C%a"
|
||||
|
||||
# i use ctrl-a waay too much in emacs/readline remap to ctrl-o
|
||||
escape ^Oo
|
||||
|
||||
hardstatus off
|
||||
hardstatus string "%H:%t [%n]"
|
4
config/.ssh/.gitignore
vendored
4
config/.ssh/.gitignore
vendored
@ -1,4 +0,0 @@
|
||||
environment*
|
||||
id_dsa
|
||||
known_hosts
|
||||
*.pem
|
@ -1,13 +0,0 @@
|
||||
---
|
||||
database_file: <%= File.expand_path("~/.timetrap/timetrap.db") %>
|
||||
round_in_seconds: 900
|
||||
append_notes_delimiter: ", "
|
||||
formatter_search_paths:
|
||||
- <%= File.expand_path("~/.timetrap/formatters") %>
|
||||
default_formatter: text
|
||||
auto_sheet: dotfiles
|
||||
auto_sheet_search_paths:
|
||||
- <%= File.expand_path("~/.timetrap/auto_sheets") %>
|
||||
default_command:
|
||||
auto_checkout: false
|
||||
require_note: false
|
@ -1,284 +0,0 @@
|
||||
#compdef _gh gh
|
||||
|
||||
|
||||
function _gh {
|
||||
local -a commands
|
||||
|
||||
_arguments -C \
|
||||
'--help[Show help for command]' \
|
||||
'(-R --repo)'{-R,--repo}'[Select another repository using the `OWNER/REPO` format]:' \
|
||||
'--version[Show gh version]' \
|
||||
"1: :->cmnds" \
|
||||
"*::arg:->args"
|
||||
|
||||
case $state in
|
||||
cmnds)
|
||||
commands=(
|
||||
"completion:Generate shell completion scripts"
|
||||
"help:Help about any command"
|
||||
"issue:Create and view issues"
|
||||
"pr:Create, view, and checkout pull requests"
|
||||
"repo:Create, clone, fork, and view repositories"
|
||||
)
|
||||
_describe "command" commands
|
||||
;;
|
||||
esac
|
||||
|
||||
case "$words[1]" in
|
||||
completion)
|
||||
_gh_completion
|
||||
;;
|
||||
help)
|
||||
_gh_help
|
||||
;;
|
||||
issue)
|
||||
_gh_issue
|
||||
;;
|
||||
pr)
|
||||
_gh_pr
|
||||
;;
|
||||
repo)
|
||||
_gh_repo
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
function _gh_completion {
|
||||
_arguments \
|
||||
'(-s --shell)'{-s,--shell}'[Shell type: {bash|zsh|fish|powershell}]:' \
|
||||
'--help[Show help for command]' \
|
||||
'(-R --repo)'{-R,--repo}'[Select another repository using the `OWNER/REPO` format]:'
|
||||
}
|
||||
|
||||
function _gh_help {
|
||||
_arguments \
|
||||
'--help[Show help for command]' \
|
||||
'(-R --repo)'{-R,--repo}'[Select another repository using the `OWNER/REPO` format]:'
|
||||
}
|
||||
|
||||
|
||||
function _gh_issue {
|
||||
local -a commands
|
||||
|
||||
_arguments -C \
|
||||
'--help[Show help for command]' \
|
||||
'(-R --repo)'{-R,--repo}'[Select another repository using the `OWNER/REPO` format]:' \
|
||||
"1: :->cmnds" \
|
||||
"*::arg:->args"
|
||||
|
||||
case $state in
|
||||
cmnds)
|
||||
commands=(
|
||||
"create:Create a new issue"
|
||||
"list:List and filter issues in this repository"
|
||||
"status:Show status of relevant issues"
|
||||
"view:View an issue"
|
||||
)
|
||||
_describe "command" commands
|
||||
;;
|
||||
esac
|
||||
|
||||
case "$words[1]" in
|
||||
create)
|
||||
_gh_issue_create
|
||||
;;
|
||||
list)
|
||||
_gh_issue_list
|
||||
;;
|
||||
status)
|
||||
_gh_issue_status
|
||||
;;
|
||||
view)
|
||||
_gh_issue_view
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
function _gh_issue_create {
|
||||
_arguments \
|
||||
'(-b --body)'{-b,--body}'[Supply a body. Will prompt for one otherwise.]:' \
|
||||
'(-t --title)'{-t,--title}'[Supply a title. Will prompt for one otherwise.]:' \
|
||||
'(-w --web)'{-w,--web}'[Open the browser to create an issue]' \
|
||||
'--help[Show help for command]' \
|
||||
'(-R --repo)'{-R,--repo}'[Select another repository using the `OWNER/REPO` format]:'
|
||||
}
|
||||
|
||||
function _gh_issue_list {
|
||||
_arguments \
|
||||
'(-a --assignee)'{-a,--assignee}'[Filter by assignee]:' \
|
||||
'(-A --author)'{-A,--author}'[Filter by author]:' \
|
||||
'(*-l *--label)'{\*-l,\*--label}'[Filter by label]:' \
|
||||
'(-L --limit)'{-L,--limit}'[Maximum number of issues to fetch]:' \
|
||||
'(-s --state)'{-s,--state}'[Filter by state: {open|closed|all}]:' \
|
||||
'--help[Show help for command]' \
|
||||
'(-R --repo)'{-R,--repo}'[Select another repository using the `OWNER/REPO` format]:'
|
||||
}
|
||||
|
||||
function _gh_issue_status {
|
||||
_arguments \
|
||||
'--help[Show help for command]' \
|
||||
'(-R --repo)'{-R,--repo}'[Select another repository using the `OWNER/REPO` format]:'
|
||||
}
|
||||
|
||||
function _gh_issue_view {
|
||||
_arguments \
|
||||
'(-w --web)'{-w,--web}'[Open issue in browser]' \
|
||||
'--help[Show help for command]' \
|
||||
'(-R --repo)'{-R,--repo}'[Select another repository using the `OWNER/REPO` format]:'
|
||||
}
|
||||
|
||||
|
||||
function _gh_pr {
|
||||
local -a commands
|
||||
|
||||
_arguments -C \
|
||||
'--help[Show help for command]' \
|
||||
'(-R --repo)'{-R,--repo}'[Select another repository using the `OWNER/REPO` format]:' \
|
||||
"1: :->cmnds" \
|
||||
"*::arg:->args"
|
||||
|
||||
case $state in
|
||||
cmnds)
|
||||
commands=(
|
||||
"checkout:Check out a pull request in Git"
|
||||
"create:Create a pull request"
|
||||
"list:List and filter pull requests in this repository"
|
||||
"status:Show status of relevant pull requests"
|
||||
"view:View a pull request in the browser"
|
||||
)
|
||||
_describe "command" commands
|
||||
;;
|
||||
esac
|
||||
|
||||
case "$words[1]" in
|
||||
checkout)
|
||||
_gh_pr_checkout
|
||||
;;
|
||||
create)
|
||||
_gh_pr_create
|
||||
;;
|
||||
list)
|
||||
_gh_pr_list
|
||||
;;
|
||||
status)
|
||||
_gh_pr_status
|
||||
;;
|
||||
view)
|
||||
_gh_pr_view
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
function _gh_pr_checkout {
|
||||
_arguments \
|
||||
'--help[Show help for command]' \
|
||||
'(-R --repo)'{-R,--repo}'[Select another repository using the `OWNER/REPO` format]:'
|
||||
}
|
||||
|
||||
function _gh_pr_create {
|
||||
_arguments \
|
||||
'(-B --base)'{-B,--base}'[The branch into which you want your code merged]:' \
|
||||
'(-b --body)'{-b,--body}'[Supply a body. Will prompt for one otherwise.]:' \
|
||||
'(-d --draft)'{-d,--draft}'[Mark pull request as a draft]' \
|
||||
'(-f --fill)'{-f,--fill}'[Do not prompt for title/body and just use commit info]' \
|
||||
'(-t --title)'{-t,--title}'[Supply a title. Will prompt for one otherwise.]:' \
|
||||
'(-w --web)'{-w,--web}'[Open the web browser to create a pull request]' \
|
||||
'--help[Show help for command]' \
|
||||
'(-R --repo)'{-R,--repo}'[Select another repository using the `OWNER/REPO` format]:'
|
||||
}
|
||||
|
||||
function _gh_pr_list {
|
||||
_arguments \
|
||||
'(-a --assignee)'{-a,--assignee}'[Filter by assignee]:' \
|
||||
'(-B --base)'{-B,--base}'[Filter by base branch]:' \
|
||||
'(*-l *--label)'{\*-l,\*--label}'[Filter by label]:' \
|
||||
'(-L --limit)'{-L,--limit}'[Maximum number of items to fetch]:' \
|
||||
'(-s --state)'{-s,--state}'[Filter by state: {open|closed|merged|all}]:' \
|
||||
'--help[Show help for command]' \
|
||||
'(-R --repo)'{-R,--repo}'[Select another repository using the `OWNER/REPO` format]:'
|
||||
}
|
||||
|
||||
function _gh_pr_status {
|
||||
_arguments \
|
||||
'--help[Show help for command]' \
|
||||
'(-R --repo)'{-R,--repo}'[Select another repository using the `OWNER/REPO` format]:'
|
||||
}
|
||||
|
||||
function _gh_pr_view {
|
||||
_arguments \
|
||||
'(-w --web)'{-w,--web}'[Open pull request in browser]' \
|
||||
'--help[Show help for command]' \
|
||||
'(-R --repo)'{-R,--repo}'[Select another repository using the `OWNER/REPO` format]:'
|
||||
}
|
||||
|
||||
|
||||
function _gh_repo {
|
||||
local -a commands
|
||||
|
||||
_arguments -C \
|
||||
'--help[Show help for command]' \
|
||||
'(-R --repo)'{-R,--repo}'[Select another repository using the `OWNER/REPO` format]:' \
|
||||
"1: :->cmnds" \
|
||||
"*::arg:->args"
|
||||
|
||||
case $state in
|
||||
cmnds)
|
||||
commands=(
|
||||
"clone:Clone a repository locally"
|
||||
"create:Create a new repository"
|
||||
"fork:Create a fork of a repository"
|
||||
"view:View a repository in the browser"
|
||||
)
|
||||
_describe "command" commands
|
||||
;;
|
||||
esac
|
||||
|
||||
case "$words[1]" in
|
||||
clone)
|
||||
_gh_repo_clone
|
||||
;;
|
||||
create)
|
||||
_gh_repo_create
|
||||
;;
|
||||
fork)
|
||||
_gh_repo_fork
|
||||
;;
|
||||
view)
|
||||
_gh_repo_view
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
function _gh_repo_clone {
|
||||
_arguments \
|
||||
'--help[Show help for command]' \
|
||||
'(-R --repo)'{-R,--repo}'[Select another repository using the `OWNER/REPO` format]:'
|
||||
}
|
||||
|
||||
function _gh_repo_create {
|
||||
_arguments \
|
||||
'(-d --description)'{-d,--description}'[Description of repository]:' \
|
||||
'--enable-issues[Enable issues in the new repository]' \
|
||||
'--enable-wiki[Enable wiki in the new repository]' \
|
||||
'(-h --homepage)'{-h,--homepage}'[Repository home page URL]:' \
|
||||
'--public[Make the new repository public]' \
|
||||
'(-t --team)'{-t,--team}'[The name of the organization team to be granted access]:' \
|
||||
'--help[Show help for command]' \
|
||||
'(-R --repo)'{-R,--repo}'[Select another repository using the `OWNER/REPO` format]:'
|
||||
}
|
||||
|
||||
function _gh_repo_fork {
|
||||
_arguments \
|
||||
'--clone[Clone fork: {true|false|prompt}]' \
|
||||
'--remote[Add remote for fork: {true|false|prompt}]' \
|
||||
'--help[Show help for command]' \
|
||||
'(-R --repo)'{-R,--repo}'[Select another repository using the `OWNER/REPO` format]:'
|
||||
}
|
||||
|
||||
function _gh_repo_view {
|
||||
_arguments \
|
||||
'(-w --web)'{-w,--web}'[Open repository in browser]' \
|
||||
'--help[Show help for command]' \
|
||||
'(-R --repo)'{-R,--repo}'[Select another repository using the `OWNER/REPO` format]:'
|
||||
}
|
||||
|
@ -1 +0,0 @@
|
||||
# oh-my-zsh complains without a .zsh file in here
|
@ -1,18 +0,0 @@
|
||||
# walkah ZSH Theme
|
||||
|
||||
if [ -z $SSH_CONNECTION ]; then HCOLOR="green"; else HCOLOR="blue"; fi
|
||||
local return_code="%(?..%{$fg[red]%}%? ↵%{$reset_color%})"
|
||||
|
||||
function asdf_prompt() {
|
||||
echo $(asdf current $1|awk '{print $2}')
|
||||
}
|
||||
|
||||
PROMPT='%{$fg[$HCOLOR]%}%m%{$reset_color%}:$(shrink_path -f) $(git_prompt_info)%{$fg[red]%}%(!.#.»)%{$reset_color%} '
|
||||
PROMPT2='%{$fg[red]%}\ %{$reset_color%}'
|
||||
if (( $+commands[asdf] )); then
|
||||
RPS1='%{$fg[cyan]%}(%{$fg[red]%}$(asdf_prompt ruby) %{$fg[green]%}$(asdf_prompt nodejs) %{$fg[blue]%}$(asdf_prompt python)%{$fg[cyan]%}) %{$reset_color%}${return_code}'
|
||||
fi
|
||||
ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[green]%}±%{$fg[yellow]%}"
|
||||
ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%} "
|
||||
ZSH_THEME_GIT_PROMPT_CLEAN=""
|
||||
ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[red]%}✗%{$reset_color%}"
|
@ -44,9 +44,7 @@
|
||||
"iterm2"
|
||||
"keybase"
|
||||
"logitech-options"
|
||||
"microsoft-auto-update"
|
||||
"microsoft-edge"
|
||||
"microsoft-office"
|
||||
"minecraft"
|
||||
"obsidian"
|
||||
"plexamp"
|
||||
@ -70,6 +68,7 @@
|
||||
Magnet = 441258766;
|
||||
Parcel = 639968404;
|
||||
Reeder = 1529448980;
|
||||
Tailscale = 1475387142;
|
||||
Todoist = 585829637;
|
||||
UlyssesMac = 1225570693;
|
||||
Xcode = 497799835;
|
||||
|
53
home.nix
53
home.nix
@ -1,14 +1,4 @@
|
||||
{ config, pkgs, ... }: {
|
||||
imports = [
|
||||
./modules/elixir.nix
|
||||
./modules/golang.nix
|
||||
./modules/haskell.nix
|
||||
./modules/nodejs.nix
|
||||
./modules/python.nix
|
||||
./modules/ruby.nix
|
||||
./modules/rust.nix
|
||||
];
|
||||
|
||||
# Let Home Manager install and manage itself.
|
||||
programs.home-manager.enable = true;
|
||||
|
||||
@ -17,27 +7,21 @@
|
||||
# home.username = builtins.getEnv "USER";
|
||||
# home.homeDirectory = builtins.getEnv "HOME";
|
||||
|
||||
home.sessionPath = [ "$HOME/.local/bin" "$HOME/.emacs.d/bin" ];
|
||||
home.sessionPath =
|
||||
[ "$HOME/.local/bin" "$HOME/.emacs.d/bin" "$HOME/.cargo/bin" ];
|
||||
|
||||
home.packages = with pkgs; [
|
||||
aws
|
||||
cmake
|
||||
direnv
|
||||
docker
|
||||
docker-compose
|
||||
exercism
|
||||
fd
|
||||
git
|
||||
gitAndTools.gh
|
||||
google-cloud-sdk
|
||||
heroku
|
||||
htop
|
||||
jq
|
||||
mr
|
||||
niv
|
||||
nixfmt
|
||||
pinentry
|
||||
ripgrep
|
||||
sqlite
|
||||
wakatime
|
||||
];
|
||||
|
||||
@ -54,6 +38,10 @@
|
||||
recursive = true;
|
||||
};
|
||||
|
||||
home.file.".ghci".text = ''
|
||||
:set prompt "λ> "
|
||||
'';
|
||||
|
||||
programs = {
|
||||
zsh = {
|
||||
enable = true;
|
||||
@ -62,17 +50,22 @@
|
||||
oh-my-zsh = {
|
||||
enable = true;
|
||||
plugins = [
|
||||
"asdf"
|
||||
"bundler"
|
||||
"direnv"
|
||||
"docker"
|
||||
"docker-compose"
|
||||
"gcloud"
|
||||
"git"
|
||||
"golang"
|
||||
"mix"
|
||||
"rails"
|
||||
"ssh-agent"
|
||||
"tmux"
|
||||
];
|
||||
};
|
||||
sessionVariables = { EDITOR = "vim"; };
|
||||
sessionVariables = {
|
||||
EDITOR = "vim";
|
||||
GOPATH = "$HOME/.go";
|
||||
};
|
||||
};
|
||||
dircolors = {
|
||||
enable = true;
|
||||
@ -145,27 +138,13 @@
|
||||
|
||||
emacs = {
|
||||
enable = true;
|
||||
package = if (pkgs.stdenv.isLinux) then pkgs.emacs else pkgs.emacsMacport;
|
||||
package = pkgs.emacs-nox;
|
||||
extraPackages = epkgs: [ epkgs.vterm ];
|
||||
};
|
||||
|
||||
vim = { enable = true; };
|
||||
};
|
||||
|
||||
services = if (pkgs.stdenv.isLinux) then {
|
||||
lorri.enable = true;
|
||||
syncthing.enable = true;
|
||||
gpg-agent = {
|
||||
enable = true;
|
||||
enableSshSupport = true;
|
||||
extraConfig = ''
|
||||
allow-emacs-pinentry
|
||||
allow-loopback-pinentry
|
||||
'';
|
||||
};
|
||||
} else
|
||||
{ };
|
||||
|
||||
# This value determines the Home Manager release that your
|
||||
# configuration is compatible with. This helps avoid breakage
|
||||
# when a new Home Manager release introduces backwards
|
||||
|
@ -1,7 +0,0 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
{
|
||||
home.packages = with pkgs; [ elixir elixir_ls ];
|
||||
|
||||
programs.zsh.oh-my-zsh.plugins = [ "mix" ];
|
||||
}
|
@ -1,22 +0,0 @@
|
||||
{ pkgs, ... }:
|
||||
|
||||
{
|
||||
home.sessionPath = [ "$HOME/.go/bin" ];
|
||||
|
||||
home.packages = with pkgs; [
|
||||
go
|
||||
gocode
|
||||
golangci-lint
|
||||
gomodifytags
|
||||
gopls
|
||||
gotests
|
||||
gore
|
||||
];
|
||||
|
||||
programs = {
|
||||
zsh = {
|
||||
oh-my-zsh = { plugins = [ "golang" ]; };
|
||||
sessionVariables = { GOPATH = "$HOME/.go"; };
|
||||
};
|
||||
};
|
||||
}
|
@ -1,15 +0,0 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
{
|
||||
home.packages = with pkgs; [
|
||||
ghc
|
||||
stack
|
||||
stylish-haskell
|
||||
haskellPackages.ghcide
|
||||
haskellPackages.hoogle
|
||||
];
|
||||
|
||||
home.file.".ghci".text = ''
|
||||
:set prompt "λ> "
|
||||
'';
|
||||
}
|
@ -1,10 +0,0 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
{
|
||||
home.packages = with pkgs; [
|
||||
nodejs
|
||||
nodePackages.js-beautify
|
||||
nodePackages.prettier
|
||||
yarn
|
||||
];
|
||||
}
|
@ -1,12 +0,0 @@
|
||||
{ pkgs, ... }:
|
||||
|
||||
{
|
||||
home.packages = with pkgs; [
|
||||
pipenv
|
||||
python3
|
||||
python38Packages.black
|
||||
python38Packages.isort
|
||||
python38Packages.pyflakes
|
||||
python38Packages.pytest
|
||||
];
|
||||
}
|
@ -1,7 +0,0 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
{
|
||||
home.packages = with pkgs; [ ruby_2_7 solargraph ];
|
||||
|
||||
programs.zsh.oh-my-zsh.plugins = [ "bundler" "rails" ];
|
||||
}
|
@ -1,6 +0,0 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
{
|
||||
home.sessionPath = [ "$HOME/.cargo/bin" ];
|
||||
home.packages = with pkgs; [ cargo rustc rust-analyzer ];
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user