Compare commits
No commits in common. "a5f680bc17a9ac8b53b8df70affae2d6d94065b3" and "d14d7ae72fb83c2ae05aea62b4460349f7843603" have entirely different histories.
a5f680bc17
...
d14d7ae72f
15 changed files with 563 additions and 584 deletions
139
homes/common.nix
139
homes/common.nix
|
|
@ -1,12 +1,17 @@
|
|||
{ config, lib, pkgs, pkgs-unstable, ... }: {
|
||||
imports = [
|
||||
./../programs/shells.nix
|
||||
./../programs/bat.nix
|
||||
./../programs/direnv.nix
|
||||
./../programs/git.nix
|
||||
./../programs/lsd.nix
|
||||
./../programs/starship.nix
|
||||
];
|
||||
{ config, lib, pkgs, pkgs-unstable, ... }:
|
||||
let
|
||||
conda_init = shell: ''
|
||||
eval "$(${pkgs.micromamba}/bin/micromamba shell hook --shell ${shell})"
|
||||
|
||||
'';
|
||||
nd_bash_function = ''
|
||||
function nd() {
|
||||
mkdir -p "$1" && cd "$1"
|
||||
}
|
||||
|
||||
'';
|
||||
starship-config = import ./../programs/starship.nix;
|
||||
in {
|
||||
home = {
|
||||
stateVersion = "23.11";
|
||||
file = { };
|
||||
|
|
@ -75,12 +80,116 @@
|
|||
};
|
||||
};
|
||||
programs = {
|
||||
home-manager.enable = true;
|
||||
|
||||
gh.enable = true;
|
||||
gpg.enable = true;
|
||||
pandoc.enable = true;
|
||||
yt-dlp.enable = true;
|
||||
home-manager = { enable = true; };
|
||||
bash = {
|
||||
enable = true;
|
||||
initExtra = conda_init "bash" + nd_bash_function + ''
|
||||
export PS1="[\[\e[32m\]\u\[\e[m\]@\[\e[33m\]\h\[\e[m\] \[\e[34m\]\W\[\e[m\]] \\$ "
|
||||
'';
|
||||
};
|
||||
bat = {
|
||||
enable = true;
|
||||
config = { pager = "less -SRF"; };
|
||||
};
|
||||
direnv = {
|
||||
enable = true;
|
||||
enableBashIntegration = true;
|
||||
enableZshIntegration = true;
|
||||
};
|
||||
gh = { enable = true; };
|
||||
git = {
|
||||
enable = true;
|
||||
userName = "Thomas A. Christensen II";
|
||||
userEmail = "25492070+MillironX@users.noreply.github.com";
|
||||
extraConfig = {
|
||||
core = { editor = "nvim"; };
|
||||
credential = { helper = "store"; };
|
||||
color = { ui = "auto"; };
|
||||
init = { defaultBranch = "master"; };
|
||||
column = { ui = "auto"; };
|
||||
branch = { sort = "-committerdate"; };
|
||||
tag = { sort = "version:refname"; };
|
||||
diff = {
|
||||
algorithm = "histogram";
|
||||
colorMoved = "plain";
|
||||
mnemonicPrefix = true;
|
||||
renames = true;
|
||||
};
|
||||
push = {
|
||||
default = "simple";
|
||||
autoSetupRemote = true;
|
||||
followTages = true;
|
||||
};
|
||||
fetch = {
|
||||
prune = true;
|
||||
pruneTags = true;
|
||||
all = true;
|
||||
};
|
||||
help = { autocorrect = "prompt"; };
|
||||
commit = { verbose = true; };
|
||||
rerere = {
|
||||
enabled = true;
|
||||
autoupdate = true;
|
||||
};
|
||||
rebase = {
|
||||
autoSquash = true;
|
||||
autoStash = true;
|
||||
updateRefs = true;
|
||||
};
|
||||
merge = { conflictstyle = "zdiff3"; };
|
||||
pull = { rebase = true; };
|
||||
};
|
||||
};
|
||||
gpg = { enable = true; };
|
||||
lsd = {
|
||||
enable = true;
|
||||
enableBashIntegration = true;
|
||||
enableZshIntegration = true;
|
||||
};
|
||||
neovim = {
|
||||
enable = true;
|
||||
package = pkgs.neovim-unwrapped;
|
||||
defaultEditor = true;
|
||||
coc.enable = true;
|
||||
plugins = with pkgs.vimPlugins; [
|
||||
mason-nvim
|
||||
mason-lspconfig-nvim
|
||||
nvim-lspconfig
|
||||
nvim-dap
|
||||
nvim-dap-ui
|
||||
null-ls-nvim
|
||||
nvim-lint
|
||||
formatter-nvim
|
||||
lspsaga-nvim
|
||||
vim-slime
|
||||
];
|
||||
extraLuaConfig = ''
|
||||
require("mason").setup()
|
||||
'';
|
||||
};
|
||||
pandoc = { enable = true; };
|
||||
starship = starship-config { inherit lib; };
|
||||
yt-dlp = { enable = true; };
|
||||
zsh = {
|
||||
enable = true;
|
||||
autosuggestion.enable = true;
|
||||
enableCompletion = true;
|
||||
completionInit =
|
||||
"autoload -U compinit && compinit; autoload -U bashcompinit && bashcompinit";
|
||||
antidote = {
|
||||
enable = true;
|
||||
plugins = [
|
||||
"getantidote/use-omz"
|
||||
"ohmyzsh/ohmyzsh path:lib"
|
||||
"ohmyzsh/ohmyzsh path:plugins/git"
|
||||
"ohmyzsh/ohmyzsh path:plugins/extract"
|
||||
"zsh-users/zsh-syntax-highlighting"
|
||||
"zsh-users/zsh-autosuggestions"
|
||||
"zsh-users/zsh-completions"
|
||||
];
|
||||
};
|
||||
initContent = conda_init "zsh" + nd_bash_function;
|
||||
};
|
||||
};
|
||||
xdg = {
|
||||
dataFile = { "julia/config/startup.jl".source = ./../dotfiles/startup.jl; };
|
||||
|
|
|
|||
|
|
@ -1,11 +1,8 @@
|
|||
{ pkgs, ... }: {
|
||||
|
||||
imports = [
|
||||
./../programs/firefox.nix
|
||||
./../programs/zed.nix
|
||||
./../services/gpg-agent.nix
|
||||
];
|
||||
|
||||
{ config, lib, pkgs, pkgs-unstable, firefox-addons, buildFirefoxXpiAddon, ... }:
|
||||
let
|
||||
firefox-config = import ./../programs/firefox.nix;
|
||||
zed-config = import ./../programs/zed.nix;
|
||||
in {
|
||||
home = {
|
||||
packages = with pkgs; [
|
||||
act
|
||||
|
|
@ -32,5 +29,25 @@
|
|||
];
|
||||
shellAliases = { code = "codium"; };
|
||||
};
|
||||
services = { syncthing.enable = true; };
|
||||
programs = {
|
||||
firefox = firefox-config {
|
||||
inherit firefox-addons;
|
||||
inherit buildFirefoxXpiAddon;
|
||||
inherit lib;
|
||||
inherit pkgs;
|
||||
};
|
||||
zed-editor = zed-config;
|
||||
};
|
||||
services = {
|
||||
gpg-agent = {
|
||||
enable = true;
|
||||
enableBashIntegration = true;
|
||||
enableSshSupport = true;
|
||||
enableZshIntegration = true;
|
||||
defaultCacheTtl = 604800;
|
||||
maxCacheTtl = 604800;
|
||||
verbose = true;
|
||||
};
|
||||
syncthing = { enable = true; };
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,14 +1,14 @@
|
|||
{ config, pkgs, ... }:
|
||||
{ config, lib, pkgs, pkgs-unstable, ... }:
|
||||
let
|
||||
home-manager-repo = "${config.xdg.configHome}/home-manager";
|
||||
mkOutOfStoreSymlink = config.lib.file.mkOutOfStoreSymlink;
|
||||
plasma-config = import ./../programs/plasma.nix;
|
||||
in {
|
||||
imports = [ ./../programs/plasma.nix ];
|
||||
|
||||
home = {
|
||||
packages = with pkgs; [ kwalletcli ];
|
||||
sessionVariables = { ZED_WINDOW_DECORATIONS = "server"; };
|
||||
};
|
||||
programs = { plasma = plasma-config { inherit config; }; };
|
||||
services = {
|
||||
gpg-agent = {
|
||||
# Use kwallet cli, but put it in extraConfig, otherwise gpg-agent will
|
||||
|
|
|
|||
|
|
@ -1,6 +0,0 @@
|
|||
{ ... }: {
|
||||
programs.bat = {
|
||||
enable = true;
|
||||
config = { pager = "less -SRF"; };
|
||||
};
|
||||
}
|
||||
|
|
@ -1,7 +0,0 @@
|
|||
{ ... }: {
|
||||
programs.direnv = {
|
||||
enable = true;
|
||||
enableBashIntegration = true;
|
||||
enableZshIntegration = true;
|
||||
};
|
||||
}
|
||||
|
|
@ -1,5 +1,4 @@
|
|||
{ firefox-addons, buildFirefoxXpiAddon, lib, ... }: {
|
||||
programs.firefox = {
|
||||
{ firefox-addons, buildFirefoxXpiAddon, lib, pkgs }: {
|
||||
enable = true;
|
||||
package =
|
||||
null; # Use native package manager/Homebrew b/c there are fewer breakages
|
||||
|
|
@ -257,5 +256,4 @@
|
|||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,45 +0,0 @@
|
|||
{ ... }: {
|
||||
programs.git = {
|
||||
enable = true;
|
||||
userName = "Thomas A. Christensen II";
|
||||
userEmail = "25492070+MillironX@users.noreply.github.com";
|
||||
extraConfig = {
|
||||
core = { editor = "nvim"; };
|
||||
credential = { helper = "store"; };
|
||||
color = { ui = "auto"; };
|
||||
init = { defaultBranch = "master"; };
|
||||
column = { ui = "auto"; };
|
||||
branch = { sort = "-committerdate"; };
|
||||
tag = { sort = "version:refname"; };
|
||||
diff = {
|
||||
algorithm = "histogram";
|
||||
colorMoved = "plain";
|
||||
mnemonicPrefix = true;
|
||||
renames = true;
|
||||
};
|
||||
push = {
|
||||
default = "simple";
|
||||
autoSetupRemote = true;
|
||||
followTages = true;
|
||||
};
|
||||
fetch = {
|
||||
prune = true;
|
||||
pruneTags = true;
|
||||
all = true;
|
||||
};
|
||||
help = { autocorrect = "prompt"; };
|
||||
commit = { verbose = true; };
|
||||
rerere = {
|
||||
enabled = true;
|
||||
autoupdate = true;
|
||||
};
|
||||
rebase = {
|
||||
autoSquash = true;
|
||||
autoStash = true;
|
||||
updateRefs = true;
|
||||
};
|
||||
merge = { conflictstyle = "zdiff3"; };
|
||||
pull = { rebase = true; };
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
@ -1,7 +0,0 @@
|
|||
{ ... }: {
|
||||
programs.lsd = {
|
||||
enable = true;
|
||||
enableBashIntegration = true;
|
||||
enableZshIntegration = true;
|
||||
};
|
||||
}
|
||||
|
|
@ -1,23 +0,0 @@
|
|||
{ pkgs, ... }: {
|
||||
programs.neovim = {
|
||||
enable = true;
|
||||
package = pkgs.neovim-unwrapped;
|
||||
defaultEditor = true;
|
||||
coc.enable = true;
|
||||
plugins = with pkgs.vimPlugins; [
|
||||
mason-nvim
|
||||
mason-lspconfig-nvim
|
||||
nvim-lspconfig
|
||||
nvim-dap
|
||||
nvim-dap-ui
|
||||
null-ls-nvim
|
||||
nvim-lint
|
||||
formatter-nvim
|
||||
lspsaga-nvim
|
||||
vim-slime
|
||||
];
|
||||
extraLuaConfig = ''
|
||||
require("mason").setup()
|
||||
'';
|
||||
};
|
||||
}
|
||||
|
|
@ -1,5 +1,4 @@
|
|||
{ config, ... }: {
|
||||
programs.plasma = {
|
||||
{ config }: {
|
||||
enable = true;
|
||||
workspace = {
|
||||
wallpaperFillMode = "preserveAspectCrop";
|
||||
|
|
@ -9,5 +8,4 @@
|
|||
"${config.home.homeDirectory}/Nextcloud/Pictures/Desktop backgrounds/";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,42 +0,0 @@
|
|||
{ pkgs, ... }:
|
||||
let
|
||||
conda_init = shell: ''
|
||||
eval "$(${pkgs.micromamba}/bin/micromamba shell hook --shell ${shell})"
|
||||
|
||||
'';
|
||||
nd_bash_function = ''
|
||||
function nd() {
|
||||
mkdir -p "$1" && cd "$1"
|
||||
}
|
||||
|
||||
'';
|
||||
in {
|
||||
programs = {
|
||||
bash = {
|
||||
enable = true;
|
||||
initExtra = conda_init "bash" + nd_bash_function + ''
|
||||
export PS1="[\[\e[32m\]\u\[\e[m\]@\[\e[33m\]\h\[\e[m\] \[\e[34m\]\W\[\e[m\]] \\$ "
|
||||
'';
|
||||
};
|
||||
zsh = {
|
||||
enable = true;
|
||||
autosuggestion.enable = true;
|
||||
enableCompletion = true;
|
||||
completionInit =
|
||||
"autoload -U compinit && compinit; autoload -U bashcompinit && bashcompinit";
|
||||
antidote = {
|
||||
enable = true;
|
||||
plugins = [
|
||||
"getantidote/use-omz"
|
||||
"ohmyzsh/ohmyzsh path:lib"
|
||||
"ohmyzsh/ohmyzsh path:plugins/git"
|
||||
"ohmyzsh/ohmyzsh path:plugins/extract"
|
||||
"zsh-users/zsh-syntax-highlighting"
|
||||
"zsh-users/zsh-autosuggestions"
|
||||
"zsh-users/zsh-completions"
|
||||
];
|
||||
};
|
||||
initContent = conda_init "zsh" + nd_bash_function;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
{ lib, ... }:
|
||||
{ lib }:
|
||||
let language-format-string = "[$symbol($version )]($style)";
|
||||
in {
|
||||
programs.starship = {
|
||||
|
||||
enable = true;
|
||||
enableBashIntegration = true;
|
||||
enableZshIntegration = true;
|
||||
|
|
@ -85,5 +85,4 @@ in {
|
|||
};
|
||||
username = { format = "[$user]($style)"; };
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
{ ... }: {
|
||||
programs.zed-editor = {
|
||||
{
|
||||
enable = true;
|
||||
extensions = [
|
||||
"basher"
|
||||
|
|
@ -21,7 +20,7 @@
|
|||
agent = {
|
||||
default_model = {
|
||||
provider = "copilot_chat";
|
||||
model = "gpt-4.1";
|
||||
model = "gpt-4o";
|
||||
};
|
||||
};
|
||||
auto_install_extensions = {
|
||||
|
|
@ -79,5 +78,4 @@
|
|||
ui_font_size = 16;
|
||||
wrap_guides = [ 80 92 120 ];
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,11 +0,0 @@
|
|||
{ ... }: {
|
||||
services.gpg-agent = {
|
||||
enable = true;
|
||||
enableBashIntegration = true;
|
||||
enableSshSupport = true;
|
||||
enableZshIntegration = true;
|
||||
defaultCacheTtl = 604800;
|
||||
maxCacheTtl = 604800;
|
||||
verbose = true;
|
||||
};
|
||||
}
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
{ config, ... }:
|
||||
{ config, pkgs, ... }:
|
||||
|
||||
{
|
||||
age.secrets = {
|
||||
|
|
@ -9,7 +9,8 @@
|
|||
};
|
||||
};
|
||||
virtualisation = {
|
||||
quadlet = {
|
||||
quadlet = let inherit (config.virtualisation.quadlet) networks pods;
|
||||
in {
|
||||
containers = {
|
||||
pihole = {
|
||||
containerConfig = {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue