A complete reformatting to match nixpkgs-fmt
This commit is contained in:
@@ -1,28 +1,28 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
home.file.".ansible.cfg".text = ''
|
||||
[defaults]
|
||||
forks=10
|
||||
host_key_checking=False
|
||||
# Also available: profile_roles
|
||||
callback_enabled=timer,profile_tasks
|
||||
stdout_callback=yaml
|
||||
nocows=1
|
||||
cow_selection=tux
|
||||
collections_path=~/src
|
||||
home.file.".ansible.cfg".text = ''
|
||||
[defaults]
|
||||
forks=10
|
||||
host_key_checking=False
|
||||
# Also available: profile_roles
|
||||
callback_enabled=timer,profile_tasks
|
||||
stdout_callback=yaml
|
||||
nocows=1
|
||||
cow_selection=tux
|
||||
collections_path=~/src
|
||||
|
||||
[ssh_connection]
|
||||
pipelining=True
|
||||
ssh_args = -o ControlMaster=auto -o ControlPersist=600s -o IdentitiesOnly=yes -o GSSAPIAuthentication=no -o StrictHostKeyChecking=no
|
||||
control_path=%(directory)s/%%h-%%r
|
||||
control_path_dir=/tmp
|
||||
[ssh_connection]
|
||||
pipelining=True
|
||||
ssh_args = -o ControlMaster=auto -o ControlPersist=600s -o IdentitiesOnly=yes -o GSSAPIAuthentication=no -o StrictHostKeyChecking=no
|
||||
control_path=%(directory)s/%%h-%%r
|
||||
control_path_dir=/tmp
|
||||
|
||||
[callback_profile_tasks]
|
||||
sort_order=descending
|
||||
[callback_profile_tasks]
|
||||
sort_order=descending
|
||||
|
||||
[galaxy]
|
||||
role_skeleton_ignore = ^.git$,^.*/.git_keep$,\..*.swp
|
||||
role_skeleton = ~/src/ansible_collections/meta_ansible_templates/role
|
||||
'';
|
||||
[galaxy]
|
||||
role_skeleton_ignore = ^.git$,^.*/.git_keep$,\..*.swp
|
||||
role_skeleton = ~/src/ansible_collections/meta_ansible_templates/role
|
||||
'';
|
||||
}
|
||||
|
||||
@@ -1,93 +1,93 @@
|
||||
{ pkgs, ... }:
|
||||
|
||||
{
|
||||
programs.bash = {
|
||||
enable = true;
|
||||
shellAliases = {
|
||||
acp = "rsync --progress -ah";
|
||||
agbuild = "ansible-galaxy collection build";
|
||||
apub = "ansible-galaxy collection publish --api-key \${GALAXY_API_KEY}";
|
||||
calc = "bc";
|
||||
d = "deactivate";
|
||||
devroles = "cd ~/src/ansible_collections/devroles";
|
||||
gohome = "ssh greg@dns.greg-hellings.gmail.com.beta.tailscale.net -D localhost:10080";
|
||||
ll = "ls -l";
|
||||
molcol = "molecule -c ../../tests/molecule.yml";
|
||||
packaging = "cd ~/src/packaging";
|
||||
vdown = "vagrant destroy";
|
||||
vhalt = "vagrant halt";
|
||||
vos = "vagrant up --provision --provider openstack";
|
||||
vprov = "vagrant provision";
|
||||
vssh = "vagrant ssh";
|
||||
vup = "vagrant up --provision --provider libvirt";
|
||||
yaml2js = "python -c 'import sys, yaml, json; json.dump(yaml.load(sys.stdin), sys.stdout, indent=4)";
|
||||
};
|
||||
sessionVariables = {
|
||||
ANSIBLE_COLLECTIONS_PATH="\${HOME}/src/";
|
||||
CLICOLOR = "1";
|
||||
EDITOR = "${pkgs.vim}/bin/vim";
|
||||
GIT_SSL_NO_VERIFY = "True";
|
||||
LSCOLORS = "ExGxBxDxCxEgEdxbxgxcxd";
|
||||
MAVEN_OPTS = " -Dmaven.wagon.http.ssl.insecure=true ";
|
||||
OS_CLOUD = "default";
|
||||
SWORD_PATH = "\${HOME}/.sword";
|
||||
TIMEFORMAT = "%3Uu %3Ss %3lR %P%%";
|
||||
};
|
||||
profileExtra = ''
|
||||
if [ -e /etc/profile ]; then
|
||||
. /etc/profile
|
||||
fi
|
||||
'';
|
||||
bashrcExtra = ''
|
||||
function swordtag {
|
||||
if [ x"$1" == "x" ]; then
|
||||
echo "Please provide tag version"
|
||||
return
|
||||
fi
|
||||
svn cp http://crosswire.org/svn/sword/branches/sword-1-8-x/ http://crosswire.org/svn/sword/tags/sword-$1/
|
||||
}
|
||||
programs.bash = {
|
||||
enable = true;
|
||||
shellAliases = {
|
||||
acp = "rsync --progress -ah";
|
||||
agbuild = "ansible-galaxy collection build";
|
||||
apub = "ansible-galaxy collection publish --api-key \${GALAXY_API_KEY}";
|
||||
calc = "bc";
|
||||
d = "deactivate";
|
||||
devroles = "cd ~/src/ansible_collections/devroles";
|
||||
gohome = "ssh greg@dns.greg-hellings.gmail.com.beta.tailscale.net -D localhost:10080";
|
||||
ll = "ls -l";
|
||||
molcol = "molecule -c ../../tests/molecule.yml";
|
||||
packaging = "cd ~/src/packaging";
|
||||
vdown = "vagrant destroy";
|
||||
vhalt = "vagrant halt";
|
||||
vos = "vagrant up --provision --provider openstack";
|
||||
vprov = "vagrant provision";
|
||||
vssh = "vagrant ssh";
|
||||
vup = "vagrant up --provision --provider libvirt";
|
||||
yaml2js = "python -c 'import sys, yaml, json; json.dump(yaml.load(sys.stdin), sys.stdout, indent=4)";
|
||||
};
|
||||
sessionVariables = {
|
||||
ANSIBLE_COLLECTIONS_PATH = "\${HOME}/src/";
|
||||
CLICOLOR = "1";
|
||||
EDITOR = "${pkgs.vim}/bin/vim";
|
||||
GIT_SSL_NO_VERIFY = "True";
|
||||
LSCOLORS = "ExGxBxDxCxEgEdxbxgxcxd";
|
||||
MAVEN_OPTS = " -Dmaven.wagon.http.ssl.insecure=true ";
|
||||
OS_CLOUD = "default";
|
||||
SWORD_PATH = "\${HOME}/.sword";
|
||||
TIMEFORMAT = "%3Uu %3Ss %3lR %P%%";
|
||||
};
|
||||
profileExtra = ''
|
||||
if [ -e /etc/profile ]; then
|
||||
. /etc/profile
|
||||
fi
|
||||
'';
|
||||
bashrcExtra = ''
|
||||
function swordtag {
|
||||
if [ x"$1" == "x" ]; then
|
||||
echo "Please provide tag version"
|
||||
return
|
||||
fi
|
||||
svn cp http://crosswire.org/svn/sword/branches/sword-1-8-x/ http://crosswire.org/svn/sword/tags/sword-$1/
|
||||
}
|
||||
|
||||
function newdock {
|
||||
if [ x"$1" == "x" -o x"$2" == "x" ]; then
|
||||
echo "expected arguments [name] [source]"
|
||||
return
|
||||
fi
|
||||
podman run -P --privileged=true -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix -v "$(pwd):/dmnt" -t -i --name="$1" "$2" /bin/bash
|
||||
}
|
||||
function newdock {
|
||||
if [ x"$1" == "x" -o x"$2" == "x" ]; then
|
||||
echo "expected arguments [name] [source]"
|
||||
return
|
||||
fi
|
||||
podman run -P --privileged=true -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix -v "$(pwd):/dmnt" -t -i --name="$1" "$2" /bin/bash
|
||||
}
|
||||
|
||||
function rundock {
|
||||
podman start -a -i "$1"
|
||||
}
|
||||
function rundock {
|
||||
podman start -a -i "$1"
|
||||
}
|
||||
|
||||
function ac {
|
||||
source ~/venv/''${1}/bin/activate
|
||||
}
|
||||
function ac {
|
||||
source ~/venv/''${1}/bin/activate
|
||||
}
|
||||
|
||||
function py2env {
|
||||
/usr/bin/virtualenv -p /usr/bin/python2 "''${HOME}/venv/''${1}"
|
||||
"''${HOME}/venv/''${1}/bin/pip" install -U pip
|
||||
}
|
||||
function py2env {
|
||||
/usr/bin/virtualenv -p /usr/bin/python2 "''${HOME}/venv/''${1}"
|
||||
"''${HOME}/venv/''${1}/bin/pip" install -U pip
|
||||
}
|
||||
|
||||
function py3env {
|
||||
VENV_NAME="''${1}"
|
||||
#PYVERSION="$(python3 -c "import sys;print(sys.version[:sys.version.find('.',2)])")"
|
||||
#SITE_PACKAGES_PATH="/usr/lib64/python''${PYVERSION}/site-packages/"
|
||||
#VENV_SITE_PACKAGES="''${HOME}/venv/''${VENV_NAME}/lib64/python''${PYVERSION}/site-packages/"
|
||||
# Create the virtualenv and update pip to latest
|
||||
/usr/bin/python3 -m venv --clear "''${HOME}/venv/''${VENV_NAME}" --system-site-packages
|
||||
"''${HOME}/venv/''${1}/bin/python3" -m pip install -U pip
|
||||
# Link SELinux into the environment if necessary
|
||||
#if [ -d "''${SITE_PACKAGES_PATH}" ]; then
|
||||
# ln -s "''${SITE_PACKAGES_PATH}/selinux" "''${VENV_SITE_PACKAGES}"
|
||||
# ln -s ''${SITE_PACKAGES_PATH}/_selinux*.so "''${VENV_SITE_PACKAGES}"
|
||||
#else
|
||||
# echo "ERROR: LibSELinux not found for Python ''${PYVERSION}. Install system package to enable."
|
||||
#fi
|
||||
}
|
||||
function py3env {
|
||||
VENV_NAME="''${1}"
|
||||
#PYVERSION="$(python3 -c "import sys;print(sys.version[:sys.version.find('.',2)])")"
|
||||
#SITE_PACKAGES_PATH="/usr/lib64/python''${PYVERSION}/site-packages/"
|
||||
#VENV_SITE_PACKAGES="''${HOME}/venv/''${VENV_NAME}/lib64/python''${PYVERSION}/site-packages/"
|
||||
# Create the virtualenv and update pip to latest
|
||||
/usr/bin/python3 -m venv --clear "''${HOME}/venv/''${VENV_NAME}" --system-site-packages
|
||||
"''${HOME}/venv/''${1}/bin/python3" -m pip install -U pip
|
||||
# Link SELinux into the environment if necessary
|
||||
#if [ -d "''${SITE_PACKAGES_PATH}" ]; then
|
||||
# ln -s "''${SITE_PACKAGES_PATH}/selinux" "''${VENV_SITE_PACKAGES}"
|
||||
# ln -s ''${SITE_PACKAGES_PATH}/_selinux*.so "''${VENV_SITE_PACKAGES}"
|
||||
#else
|
||||
# echo "ERROR: LibSELinux not found for Python ''${PYVERSION}. Install system package to enable."
|
||||
#fi
|
||||
}
|
||||
|
||||
function unknown_host {
|
||||
sed -i -e ''${1}d ~/.ssh/known_hosts
|
||||
}
|
||||
'';
|
||||
};
|
||||
function unknown_host {
|
||||
sed -i -e ''${1}d ~/.ssh/known_hosts
|
||||
}
|
||||
'';
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
imports = [
|
||||
./ansible.nix
|
||||
./bash.nix
|
||||
./direnv.nix
|
||||
./git.nix
|
||||
./ssh.nix
|
||||
./vim.nix
|
||||
./xonsh.nix
|
||||
];
|
||||
imports = [
|
||||
./ansible.nix
|
||||
./bash.nix
|
||||
./direnv.nix
|
||||
./git.nix
|
||||
./ssh.nix
|
||||
./vim.nix
|
||||
./xonsh.nix
|
||||
];
|
||||
}
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
{ pkgs, ... }:
|
||||
|
||||
{
|
||||
programs.direnv = {
|
||||
enable = true;
|
||||
nix-direnv.enable = true;
|
||||
};
|
||||
programs.direnv = {
|
||||
enable = true;
|
||||
nix-direnv.enable = true;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,31 +1,33 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
programs.git = {
|
||||
enable = true;
|
||||
userName = "Greg Hellings";
|
||||
userEmail = "greg.hellings@gmail.com";
|
||||
aliases = {
|
||||
st = "status";
|
||||
ci = "commit";
|
||||
co = "checkout";
|
||||
ups = "push -u origin HEAD";
|
||||
amend = "commit --amend";
|
||||
};
|
||||
ignores = [
|
||||
".*.swp" ".*.swo" ".*.swn" # vim
|
||||
".idea" # IntelliJ
|
||||
".DS_Store" # Macs
|
||||
"Thumbs.db" # Windows
|
||||
".tox" # Tox temp directory
|
||||
".eclipse" # These next two are created by VSCodium plugins
|
||||
".bazelproject"
|
||||
];
|
||||
extraConfig = {
|
||||
init.defaultBranch = "main";
|
||||
push.default = "upstream";
|
||||
pull.rebase = "false";
|
||||
tag.sort = "version:refname";
|
||||
};
|
||||
};
|
||||
programs.git = {
|
||||
enable = true;
|
||||
userName = "Greg Hellings";
|
||||
userEmail = "greg.hellings@gmail.com";
|
||||
aliases = {
|
||||
st = "status";
|
||||
ci = "commit";
|
||||
co = "checkout";
|
||||
ups = "push -u origin HEAD";
|
||||
amend = "commit --amend";
|
||||
};
|
||||
ignores = [
|
||||
".*.swp"
|
||||
".*.swo"
|
||||
".*.swn" # vim
|
||||
".idea" # IntelliJ
|
||||
".DS_Store" # Macs
|
||||
"Thumbs.db" # Windows
|
||||
".tox" # Tox temp directory
|
||||
".eclipse" # These next two are created by VSCodium plugins
|
||||
".bazelproject"
|
||||
];
|
||||
extraConfig = {
|
||||
init.defaultBranch = "main";
|
||||
push.default = "upstream";
|
||||
pull.rebase = "false";
|
||||
tag.sort = "version:refname";
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,64 +1,65 @@
|
||||
{ lib, ... }:
|
||||
|
||||
{
|
||||
# Workaround to set the config value to user read-only
|
||||
# This allows things like SSH in distrobox to read the config file just fine
|
||||
home.file.".ssh/config" = {
|
||||
target = ".ssh/config_source";
|
||||
onChange = ''cat ~/.ssh/config_source > ~/.ssh/config && chmod 600 ~/.ssh/config'';
|
||||
};
|
||||
programs.ssh = {
|
||||
enable = true;
|
||||
serverAliveInterval = 60;
|
||||
# Workaround to set the config value to user read-only
|
||||
# This allows things like SSH in distrobox to read the config file just fine
|
||||
home.file.".ssh/config" = {
|
||||
target = ".ssh/config_source";
|
||||
onChange = ''cat ~/.ssh/config_source > ~/.ssh/config && chmod 600 ~/.ssh/config'';
|
||||
};
|
||||
programs.ssh = {
|
||||
enable = true;
|
||||
serverAliveInterval = 60;
|
||||
|
||||
includes = ["config.local"];
|
||||
includes = [ "config.local" ];
|
||||
|
||||
matchBlocks =
|
||||
let
|
||||
nas = { user = "admin"; };
|
||||
owned = { user = "greg"; };
|
||||
in {
|
||||
inherit nas;
|
||||
matchBlocks =
|
||||
let
|
||||
nas = { user = "admin"; };
|
||||
owned = { user = "greg"; };
|
||||
in
|
||||
{
|
||||
inherit nas;
|
||||
|
||||
"*" = {
|
||||
dynamicForwards = [ {
|
||||
port = 10240;
|
||||
} ];
|
||||
};
|
||||
"*" = {
|
||||
dynamicForwards = [{
|
||||
port = 10240;
|
||||
}];
|
||||
};
|
||||
|
||||
"10.42.1.4" = lib.hm.dag.entryBefore ["10.42.*"] nas;
|
||||
"nas.thehellings.lan" = nas;
|
||||
"nas.greg-hellings.gmail.com.beta.tailscale.net" = nas;
|
||||
chronicles = nas;
|
||||
"chronicles.thehellings.lan" = lib.hm.dag.entryBefore [ "*.thehellings.lan"] nas;
|
||||
"10.42.1.4" = lib.hm.dag.entryBefore [ "10.42.*" ] nas;
|
||||
"nas.thehellings.lan" = nas;
|
||||
"nas.greg-hellings.gmail.com.beta.tailscale.net" = nas;
|
||||
chronicles = nas;
|
||||
"chronicles.thehellings.lan" = lib.hm.dag.entryBefore [ "*.thehellings.lan" ] nas;
|
||||
|
||||
gh = { user = "git"; hostname = "github.com"; };
|
||||
"src" = {
|
||||
user = "gitlab";
|
||||
hostname = "git.thehellings.lan";
|
||||
};
|
||||
gh = { user = "git"; hostname = "github.com"; };
|
||||
"src" = {
|
||||
user = "gitlab";
|
||||
hostname = "git.thehellings.lan";
|
||||
};
|
||||
|
||||
"*.thehellings.lan" = owned;
|
||||
"10.42.*" = owned;
|
||||
"*.thehellings.lan" = owned;
|
||||
"10.42.*" = owned;
|
||||
|
||||
"host.crosswire.org crosswire" = {
|
||||
hostname = "host.crosswire.org";
|
||||
user = "ghellings";
|
||||
};
|
||||
"host.crosswire.org crosswire" = {
|
||||
hostname = "host.crosswire.org";
|
||||
user = "ghellings";
|
||||
};
|
||||
|
||||
fedpeople = {
|
||||
hostname = "fedorapeople.org";
|
||||
user = "greghellings";
|
||||
};
|
||||
fedpeople = {
|
||||
hostname = "fedorapeople.org";
|
||||
user = "greghellings";
|
||||
};
|
||||
|
||||
"src.fedoraproject.org pkgs.fedoraproject.org" = {
|
||||
user = "greghellings";
|
||||
};
|
||||
"src.fedoraproject.org pkgs.fedoraproject.org" = {
|
||||
user = "greghellings";
|
||||
};
|
||||
|
||||
"127.*".extraOptions = {
|
||||
PubkeyAcceptedAlgorithms = "+ssh-rsa";
|
||||
HostkeyAlgorithms = "+ssh-rsa";
|
||||
};
|
||||
};
|
||||
};
|
||||
"127.*".extraOptions = {
|
||||
PubkeyAcceptedAlgorithms = "+ssh-rsa";
|
||||
HostkeyAlgorithms = "+ssh-rsa";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
+138
-135
@@ -1,142 +1,145 @@
|
||||
{ lib, pkgs, config, ... }:
|
||||
|
||||
let
|
||||
vim-xonsh = pkgs.vimUtils.buildVimPlugin {
|
||||
name = "vim-xonsh";
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "meatballs";
|
||||
repo = "vim-xonsh";
|
||||
rev = "929f35e";
|
||||
hash = "sha256-ugHLu2Z9bTtQsIp4FQPKxgjVe9oZNjfQYrP+aHu+/uU=";
|
||||
};
|
||||
};
|
||||
vim-xonsh = pkgs.vimUtils.buildVimPlugin {
|
||||
name = "vim-xonsh";
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "meatballs";
|
||||
repo = "vim-xonsh";
|
||||
rev = "929f35e";
|
||||
hash = "sha256-ugHLu2Z9bTtQsIp4FQPKxgjVe9oZNjfQYrP+aHu+/uU=";
|
||||
};
|
||||
};
|
||||
in
|
||||
{
|
||||
fonts.fontconfig.enable = true;
|
||||
home.packages = [ (pkgs.nerdfonts.override { fonts = [ "Hack" ]; }) ];
|
||||
programs.nixvim = {
|
||||
enable = true;
|
||||
colorschemes.gruvbox.enable = true;
|
||||
globals = {
|
||||
indent_guides_enable_on_vim_startup = 1;
|
||||
nix_recommended_style = 0;
|
||||
};
|
||||
opts = {
|
||||
background = "dark";
|
||||
backup = false;
|
||||
copyindent = true;
|
||||
cursorline = true;
|
||||
expandtab = false;
|
||||
hidden = true;
|
||||
hlsearch = true;
|
||||
ignorecase = true;
|
||||
lazyredraw = true;
|
||||
list = true;
|
||||
listchars = "tab:→ ,extends:→,precedes:←,trail:·,eol:¬";
|
||||
mouse = "a";
|
||||
number = true;
|
||||
preserveindent = true;
|
||||
relativenumber = true;
|
||||
shiftwidth = 4;
|
||||
showcmd = true;
|
||||
showmatch = true;
|
||||
signcolumn = "yes";
|
||||
smartcase = true;
|
||||
softtabstop = 4;
|
||||
tabstop = 4;
|
||||
# Setting for CtrlP
|
||||
wildignore = "*.swp,*.pyc,*.class,.tox";
|
||||
wrap = false;
|
||||
writebackup = false;
|
||||
};
|
||||
keymaps = let
|
||||
winMove = key: { mode = "n"; key = "<C-${key}>"; action = "<C-w>${key}<C-w><CR>"; };
|
||||
in [ {
|
||||
mode = "n";
|
||||
key = "<C-e>";
|
||||
action = "<Esc>:BufExplorer<CR>";
|
||||
} {
|
||||
mode = "n";
|
||||
key = "<C-t>";
|
||||
#action = "<Esc>:NERDTreeToggle<CR>";
|
||||
action = "<Esc>:Neotree toggle<CR>";
|
||||
} {
|
||||
mode = "n";
|
||||
key = "<C-g>";
|
||||
action = "<Esc>:Neotree float git_status toggle<CR>";
|
||||
}
|
||||
(winMove "h")
|
||||
(winMove "j")
|
||||
(winMove "k")
|
||||
(winMove "l")
|
||||
];
|
||||
plugins = {
|
||||
airline.enable = true;
|
||||
cmp = {
|
||||
enable = true;
|
||||
autoEnableSources = true;
|
||||
settings.sources = [
|
||||
{ name = "nvim_lsp"; }
|
||||
{ name = "buffer"; group_index = 2; }
|
||||
{ name = "path"; gruop_index = 3; }
|
||||
];
|
||||
};
|
||||
direnv.enable = true;
|
||||
gitgutter.enable = true;
|
||||
fugitive.enable = true;
|
||||
fzf-lua = {
|
||||
enable = true;
|
||||
keymaps = {
|
||||
"<C-o>" = {
|
||||
action = "files";
|
||||
settings = {
|
||||
previewers.cat.cmd = "${pkgs.coreutils}/bin/cat";
|
||||
winopts.height = 0.5;
|
||||
};
|
||||
};
|
||||
"<C-p>" = {
|
||||
action = "git_files";
|
||||
settings = {
|
||||
previewers.cat.cmd = "${pkgs.coreutils}/bin/cat";
|
||||
winopts.height = 0.5;
|
||||
};
|
||||
};
|
||||
};
|
||||
profile = "fzf-vim";
|
||||
};
|
||||
lsp = {
|
||||
enable = true;
|
||||
servers = {
|
||||
ansiblels.enable = true;
|
||||
cmake.enable = true;
|
||||
gopls.enable = true;
|
||||
html.enable = true;
|
||||
nixd.enable = true;
|
||||
pylsp.enable = true;
|
||||
pyright.enable = true;
|
||||
rust-analyzer = {
|
||||
# No need to have these installed on every one of my systems
|
||||
installCargo = false;
|
||||
installRustc = false;
|
||||
enable = true;
|
||||
};
|
||||
terraformls.enable = true;
|
||||
};
|
||||
};
|
||||
neo-tree.enable = true;
|
||||
notify.enable = true;
|
||||
web-devicons.enable = true;
|
||||
} // (lib.mkIf (lib.versionAtLeast config.system.nixos.release "24.11") {});
|
||||
extraConfigLua = builtins.replaceStrings [ "@git@" ] [ "${pkgs.git}/bin/git" ] (builtins.readFile ./vim/extra.lua);
|
||||
extraConfigVim = builtins.readFile ./vim/extra.vimrc;
|
||||
extraPlugins = with pkgs.vimPlugins; [
|
||||
bufexplorer
|
||||
fonts.fontconfig.enable = true;
|
||||
home.packages = [ (pkgs.nerdfonts.override { fonts = [ "Hack" ]; }) ];
|
||||
programs.nixvim = {
|
||||
enable = true;
|
||||
colorschemes.gruvbox.enable = true;
|
||||
globals = {
|
||||
indent_guides_enable_on_vim_startup = 1;
|
||||
nix_recommended_style = 0;
|
||||
};
|
||||
opts = {
|
||||
background = "dark";
|
||||
backup = false;
|
||||
copyindent = true;
|
||||
cursorline = true;
|
||||
expandtab = false;
|
||||
hidden = true;
|
||||
hlsearch = true;
|
||||
ignorecase = true;
|
||||
lazyredraw = true;
|
||||
list = true;
|
||||
listchars = "tab:→ ,extends:→,precedes:←,trail:·,eol:¬";
|
||||
mouse = "a";
|
||||
number = true;
|
||||
preserveindent = true;
|
||||
relativenumber = true;
|
||||
shiftwidth = 4;
|
||||
showcmd = true;
|
||||
showmatch = true;
|
||||
signcolumn = "yes";
|
||||
smartcase = true;
|
||||
softtabstop = 4;
|
||||
tabstop = 4;
|
||||
# Setting for CtrlP
|
||||
wildignore = "*.swp,*.pyc,*.class,.tox";
|
||||
wrap = false;
|
||||
writebackup = false;
|
||||
};
|
||||
keymaps =
|
||||
let
|
||||
winMove = key: { mode = "n"; key = "<C-${key}>"; action = "<C-w>${key}<C-w><CR>"; };
|
||||
in
|
||||
[{
|
||||
mode = "n";
|
||||
key = "<C-e>";
|
||||
action = "<Esc>:BufExplorer<CR>";
|
||||
}
|
||||
{
|
||||
mode = "n";
|
||||
key = "<C-t>";
|
||||
#action = "<Esc>:NERDTreeToggle<CR>";
|
||||
action = "<Esc>:Neotree toggle<CR>";
|
||||
}
|
||||
{
|
||||
mode = "n";
|
||||
key = "<C-g>";
|
||||
action = "<Esc>:Neotree float git_status toggle<CR>";
|
||||
}
|
||||
(winMove "h")
|
||||
(winMove "j")
|
||||
(winMove "k")
|
||||
(winMove "l")];
|
||||
plugins = {
|
||||
airline.enable = true;
|
||||
cmp = {
|
||||
enable = true;
|
||||
autoEnableSources = true;
|
||||
settings.sources = [
|
||||
{ name = "nvim_lsp"; }
|
||||
{ name = "buffer"; group_index = 2; }
|
||||
{ name = "path"; gruop_index = 3; }
|
||||
];
|
||||
};
|
||||
direnv.enable = true;
|
||||
gitgutter.enable = true;
|
||||
fugitive.enable = true;
|
||||
fzf-lua = {
|
||||
enable = true;
|
||||
keymaps = {
|
||||
"<C-o>" = {
|
||||
action = "files";
|
||||
settings = {
|
||||
previewers.cat.cmd = "${pkgs.coreutils}/bin/cat";
|
||||
winopts.height = 0.5;
|
||||
};
|
||||
};
|
||||
"<C-p>" = {
|
||||
action = "git_files";
|
||||
settings = {
|
||||
previewers.cat.cmd = "${pkgs.coreutils}/bin/cat";
|
||||
winopts.height = 0.5;
|
||||
};
|
||||
};
|
||||
};
|
||||
profile = "fzf-vim";
|
||||
};
|
||||
lsp = {
|
||||
enable = true;
|
||||
servers = {
|
||||
ansiblels.enable = true;
|
||||
cmake.enable = true;
|
||||
gopls.enable = true;
|
||||
html.enable = true;
|
||||
nixd.enable = true;
|
||||
pylsp.enable = true;
|
||||
pyright.enable = true;
|
||||
rust-analyzer = {
|
||||
# No need to have these installed on every one of my systems
|
||||
installCargo = false;
|
||||
installRustc = false;
|
||||
enable = true;
|
||||
};
|
||||
terraformls.enable = true;
|
||||
};
|
||||
};
|
||||
neo-tree.enable = true;
|
||||
notify.enable = true;
|
||||
web-devicons.enable = true;
|
||||
} // (lib.mkIf (lib.versionAtLeast config.system.nixos.release "24.11") { });
|
||||
extraConfigLua = builtins.replaceStrings [ "@git@" ] [ "${pkgs.git}/bin/git" ] (builtins.readFile ./vim/extra.lua);
|
||||
extraConfigVim = builtins.readFile ./vim/extra.vimrc;
|
||||
extraPlugins = with pkgs.vimPlugins; [
|
||||
bufexplorer
|
||||
|
||||
context-vim
|
||||
vim-indent-guides
|
||||
vim-xonsh
|
||||
];
|
||||
viAlias = true;
|
||||
vimAlias = true;
|
||||
};
|
||||
context-vim
|
||||
vim-indent-guides
|
||||
vim-xonsh
|
||||
];
|
||||
viAlias = true;
|
||||
vimAlias = true;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,75 +1,75 @@
|
||||
{ pkgs, config, lib, ... }:
|
||||
|
||||
{
|
||||
programs.xonsh = {
|
||||
enable = true;
|
||||
programs.xonsh = {
|
||||
enable = true;
|
||||
|
||||
sessionVariables = {
|
||||
CLICOLOR = 1;
|
||||
EDITOR = "nvim";
|
||||
# vte_new_tab_cwd causes new Terminal tabs to open in the
|
||||
# same CWD as the current tab
|
||||
LESS_TERMCAP_mb = "\\033[01;31m"; # begin blinking
|
||||
LESS_TERMCAP_md = "\\033[01;31m"; # begin bold
|
||||
LESS_TERMCAP_me = "\\033[0m"; # end mode
|
||||
LESS_TERMCAP_so = "\\033[01;44;36m"; # begin standout-mode (bottom of screen)
|
||||
LESS_TERMCAP_se = "\\033[0m"; # end standout-mode
|
||||
LESS_TERMCAP_us = "\\033[00;36m"; # begin underline
|
||||
LESS_TERMCAP_ue = "\\033[0m"; # end underline
|
||||
LIBMYSQL_ENABLE_CLEARTEXT_PLUGIN = "1";
|
||||
LSCOLORS = "ExGxBxDxCxEgEdxbxgxcxd";
|
||||
MAVEN_OPTS = " -Dmaven.wagon.http.ssl.insecure=true";
|
||||
OS_CLOUD = "default";
|
||||
PROMPT = "{vte_new_tab_cwd}{env_name}{BOLD_GREEN}{user}@{hostname}{BOLD_BLUE} {short_cwd}{branch_color}{curr_branch: {}}{RESET} {BOLD_BLUE}{prompt_end}{RESET} ";
|
||||
SWORD_PATH = "${config.home.homeDirectory}/.sword/";
|
||||
TIMEFORMAT = "%3Uu %3Ss %3lR %P%%";
|
||||
# Tells vox where to find virtualenvs
|
||||
VIRTUALENV_HOME = "${config.home.homeDirectory}/venv/";
|
||||
XONSH_COLOR_STYLE = "default";
|
||||
sessionVariables = {
|
||||
CLICOLOR = 1;
|
||||
EDITOR = "nvim";
|
||||
# vte_new_tab_cwd causes new Terminal tabs to open in the
|
||||
# same CWD as the current tab
|
||||
LESS_TERMCAP_mb = "\\033[01;31m"; # begin blinking
|
||||
LESS_TERMCAP_md = "\\033[01;31m"; # begin bold
|
||||
LESS_TERMCAP_me = "\\033[0m"; # end mode
|
||||
LESS_TERMCAP_so = "\\033[01;44;36m"; # begin standout-mode (bottom of screen)
|
||||
LESS_TERMCAP_se = "\\033[0m"; # end standout-mode
|
||||
LESS_TERMCAP_us = "\\033[00;36m"; # begin underline
|
||||
LESS_TERMCAP_ue = "\\033[0m"; # end underline
|
||||
LIBMYSQL_ENABLE_CLEARTEXT_PLUGIN = "1";
|
||||
LSCOLORS = "ExGxBxDxCxEgEdxbxgxcxd";
|
||||
MAVEN_OPTS = " -Dmaven.wagon.http.ssl.insecure=true";
|
||||
OS_CLOUD = "default";
|
||||
PROMPT = "{vte_new_tab_cwd}{env_name}{BOLD_GREEN}{user}@{hostname}{BOLD_BLUE} {short_cwd}{branch_color}{curr_branch: {}}{RESET} {BOLD_BLUE}{prompt_end}{RESET} ";
|
||||
SWORD_PATH = "${config.home.homeDirectory}/.sword/";
|
||||
TIMEFORMAT = "%3Uu %3Ss %3lR %P%%";
|
||||
# Tells vox where to find virtualenvs
|
||||
VIRTUALENV_HOME = "${config.home.homeDirectory}/venv/";
|
||||
XONSH_COLOR_STYLE = "default";
|
||||
|
||||
GOPATH = "${config.home.homeDirectory}/src/go";
|
||||
GOBIN = "${config.home.homeDirectory}/src/bin";
|
||||
};
|
||||
GOPATH = "${config.home.homeDirectory}/src/go";
|
||||
GOBIN = "${config.home.homeDirectory}/src/bin";
|
||||
};
|
||||
|
||||
aliases = {
|
||||
# Python related ones
|
||||
ac = "vox activate";
|
||||
d = "vox deactivate";
|
||||
aliases = {
|
||||
# Python related ones
|
||||
ac = "vox activate";
|
||||
d = "vox deactivate";
|
||||
|
||||
# Nix related ones
|
||||
gl-nging = "sudo nixos-container run gitlab -- systemctl restart nginx";
|
||||
nb = "nix build -L";
|
||||
nixdu = "sudo nix-store --gc --print-roots | egrep -v r\"^(/nix/var|/run/\\w+-system|\\{memory|/proc)\"";
|
||||
nixtest = "nixpkgs-review rev HEAD";
|
||||
nixup = "nix flake update";
|
||||
stable = "nix flake update nixpkgs hm nixvimstable";
|
||||
unstable = "nix flake update nixunstable hmunstable nixvimunstable nurpkgs vsext wsl";
|
||||
# Nix related ones
|
||||
gl-nging = "sudo nixos-container run gitlab -- systemctl restart nginx";
|
||||
nb = "nix build -L";
|
||||
nixdu = "sudo nix-store --gc --print-roots | egrep -v r\"^(/nix/var|/run/\\w+-system|\\{memory|/proc)\"";
|
||||
nixtest = "nixpkgs-review rev HEAD";
|
||||
nixup = "nix flake update";
|
||||
stable = "nix flake update nixpkgs hm nixvimstable";
|
||||
unstable = "nix flake update nixunstable hmunstable nixvimunstable nurpkgs vsext wsl";
|
||||
|
||||
# General
|
||||
gh-personal = "$GH_CONFIG_DIR=\"${config.home.homeDirectory}/.config/gh/personal\" gh";
|
||||
ls = "ls --color";
|
||||
ll = "ls -l --color";
|
||||
tf = "terraform";
|
||||
# General
|
||||
gh-personal = "$GH_CONFIG_DIR=\"${config.home.homeDirectory}/.config/gh/personal\" gh";
|
||||
ls = "ls --color";
|
||||
ll = "ls -l --color";
|
||||
tf = "terraform";
|
||||
|
||||
# Tailscale related ones
|
||||
tsup = "sudo tailscale up";
|
||||
tspub = "sudo tailscale up --exit-node=linode";
|
||||
tshome = "sudo tailscale up --exit-node=2maccabees";
|
||||
tsclear = "sudo tailscale up --exit-node=''";
|
||||
# Tailscale related ones
|
||||
tsup = "sudo tailscale up";
|
||||
tspub = "sudo tailscale up --exit-node=linode";
|
||||
tshome = "sudo tailscale up --exit-node=2maccabees";
|
||||
tsclear = "sudo tailscale up --exit-node=''";
|
||||
|
||||
# Vagrant related
|
||||
vdown = "vagrant destroy";
|
||||
vhalt = "vagrant halt";
|
||||
vos = "vagrant up --provision --provider openstack";
|
||||
vprov = "vagrant provision";
|
||||
vup = "vagrant up --provision --provider libvirt";
|
||||
vssh = "vagrant ssh";
|
||||
};
|
||||
# Vagrant related
|
||||
vdown = "vagrant destroy";
|
||||
vhalt = "vagrant halt";
|
||||
vos = "vagrant up --provision --provider openstack";
|
||||
vprov = "vagrant provision";
|
||||
vup = "vagrant up --provision --provider libvirt";
|
||||
vssh = "vagrant ssh";
|
||||
};
|
||||
|
||||
configHeader = builtins.readFile ./xonsh_header.xsh;
|
||||
configFooter = (builtins.readFile ./xonsh_footer.xsh) + (builtins.concatStringsSep "\n" [
|
||||
"with open('${pkgs.stdenv.cc}/nix-support/dynamic-linker', 'r') as fp:"
|
||||
" $NIX_LD = fp.read().strip()"
|
||||
]);
|
||||
};
|
||||
configHeader = builtins.readFile ./xonsh_header.xsh;
|
||||
configFooter = (builtins.readFile ./xonsh_footer.xsh) + (builtins.concatStringsSep "\n" [
|
||||
"with open('${pkgs.stdenv.cc}/nix-support/dynamic-linker', 'r') as fp:"
|
||||
" $NIX_LD = fp.read().strip()"
|
||||
]);
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user