Compare commits

...

5 Commits

Author SHA1 Message Date
eebf8c8bb6
refactor(nvim): improve neotest binds
Some checks are pending
Check Formatting of Files / Check-Formatting (push) Waiting to run
2024-10-19 16:17:37 -05:00
b15d1e38c5
refactor(nix): do not make wezterm input follow nixpkgs upstream 2024-10-19 16:16:55 -05:00
3156d0d494
refactor: migrate orion-technologies.io -> price-hiller.com 2024-10-19 16:16:55 -05:00
b1fb018db5
refactor(home/price): migrate git config to own conf dir 2024-10-19 16:15:06 -05:00
309ae4cb17
chore(secrets): update git module url 2024-10-19 16:14:51 -05:00
12 changed files with 123 additions and 208 deletions

2
.gitmodules vendored
View File

@ -24,4 +24,4 @@
url = https://github.com/romkatv/powerlevel10k.git
[submodule "secrets"]
path = secrets
url = ssh://gitea@git.orion-technologies.io:2220/Price/Secrets.git
url = ssh://gitea@git.price-hiller.com:2220/Price/Secrets.git

View File

@ -1,5 +1,5 @@
* Price Hiller's Dots
This is a mirror from my Git server over [[https://git.orion-technologies.io/Price/dots][here]].
This is a mirror from my Git server over [[https://git.price-hiller.com/Price/dots][here]].
These are my dot files. All the actual dots can be found under ~users/price/dots/~.

View File

@ -19,10 +19,7 @@
url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs";
};
wezterm = {
url = "github:wez/wezterm?dir=nix";
inputs.nixpkgs.follows = "nixpkgs";
};
wezterm.url = "github:wez/wezterm?dir=nix";
agenix = {
url = "github:yaxitech/ragenix";
inputs.nixpkgs.follows = "nixpkgs";
@ -35,7 +32,7 @@
inputs.nixpkgs.follows = "nixpkgs";
};
blog = {
url = "git+https://git.orion-technologies.io/blog/blog";
url = "git+https://git.price-hiller.com/blog/blog";
inputs.nixpkgs.follows = "nixpkgs";
};
emacs-overlay = {
@ -252,7 +249,7 @@
in
{
luna = {
hostname = "luna.hosts.orion-technologies.io";
hostname = "luna.hosts.price-hiller.com";
fastConnection = true;
profiles.system = {
sshUser = "price";

View File

@ -1,6 +1,6 @@
{ config, ... }:
let
grafana_host = "grafana.orion-technologies.io";
grafana_host = "grafana.${config.networking.domain}";
in
{
services = {
@ -23,4 +23,4 @@ in
};
};
};
}
}

View File

@ -1,6 +1,6 @@
{ config, pkgs, ... }:
let
prometheus_host = "prometheus.orion-technologies.io";
prometheus_host = "prometheus.${config.networking.domain}";
in
{
services = {
@ -89,4 +89,4 @@ in
group = "prometheus";
}
];
}
}

View File

@ -1,105 +1,22 @@
{ hostname, ... }:
{ hostname, config, ... }:
let
networks_dhcp_use_dns = "no";
networks_dhcp = "ipv4";
networks_multicast_dns = "no";
networks_ipv6_privacy = "yes";
networks_ipv6_accept_ra = "yes";
networks_network_config = {
DHCP = networks_dhcp;
MulticastDNS = networks_multicast_dns;
IPv6PrivacyExtensions = networks_ipv6_privacy;
IPv6AcceptRA = networks_ipv6_accept_ra;
};
resolved_nameservers = [
"1.1.1.1#cloudflare-dns.com"
"9.9.9.9#dns.quad9.net"
"8.8.8.8#dns.google"
"2606:4700:4700::1111#cloudflare-dns.com"
"2620:fe::9#dns.quad9.net"
"2001:4860:4860::8888#dns.google"
];
resolved_fallback_nameservers = [
"1.1.1.1#one.one.one.one"
"1.0.0.1#one.one.one.one"
];
in
{
systemd.network = {
enable = true;
# HACK: Disable wait-online, check in on https://github.com/NixOS/nixpkgs/pull/258680 &
# https://github.com/NixOS/nixpkgs/issues/247608
wait-online.enable = false;
networks = {
"10-wlan" = {
matchConfig.Name = [ "wl*" ];
networkConfig = networks_network_config;
dhcpV4Config = {
RouteMetric = 600;
UseDNS = networks_dhcp_use_dns;
};
ipv6AcceptRAConfig = {
RouteMetric = 600;
UseDNS = networks_dhcp_use_dns;
};
};
"10-ethernet" = {
matchConfig.Name = [
"en*"
"eth*"
];
networkConfig = networks_network_config;
dhcpV4Config = {
RouteMetric = 100;
UseDNS = networks_dhcp_use_dns;
};
ipv6AcceptRAConfig = {
RouteMetric = 100;
UseDNS = networks_dhcp_use_dns;
};
};
"10-wwan" = {
matchConfig.Name = [ "ww*" ];
networkConfig = networks_network_config;
dhcpV4Config = {
RouteMetric = 700;
UseDNS = networks_dhcp_use_dns;
};
ipv6AcceptRAConfig = {
RouteMetric = 700;
UseDNS = networks_dhcp_use_dns;
};
};
};
};
services.resolved = {
enable = true;
dnssec = "allow-downgrade";
domains = [ "~." ];
fallbackDns = resolved_fallback_nameservers;
llmnr = "resolve";
extraConfig = ''
MulticastDNS=yes
DNSOverTLS=yes
CacheFromLocalhost=no
Cache=yes
'';
dnsovertls = "true";
dnssec = "false";
};
networking = {
hostName = hostname;
domain = "price-hiller.com";
fqdn = "${config.networking.hostname}.hosts.${config.networking.domain}";
nameservers = [
"194.242.2.2#dns.mullvad.net"
"2a07:e340::2#dns.mullvad.net"
"91.239.100.100#anycast.uncensoreddns.org"
"2001:67c:28a4::#anycast.uncensoreddns.org"
];
useNetworkd = true;
enableIPv6 = true;
nameservers = resolved_nameservers;
nftables.enable = true;
firewall = {
enable = true;
allowedTCPPorts = [
80
443
2200
];
};
hostName = "${hostname}";
};
}
}

View File

@ -6,7 +6,7 @@
...
}:
let
gitea_host = "git.orion-technologies.io";
gitea_host = "git.${config.networking.domain}";
# TODO: Move this docker image out to a separate package and NixOS Module
# Huge thank you to https://icewind.nl/entry/gitea-actions-nix/ -- wouldn't have figured this out
# without that post 🙂
@ -157,4 +157,4 @@ in
group = config.services.gitea.group;
}
];
}
}

View File

@ -10,15 +10,11 @@
security.acme = {
acceptTerms = true;
defaults.email = "price@orion-technologies.io";
defaults.email = "price@price-hiller.com";
};
networking.firewall.allowedTCPPorts = [ 80 443 ];
services.nginx.virtualHosts = {
"blog.orion-technologies.io" = {
forceSSL = true;
enableACME = true;
globalRedirect = "price-hiller.com";
};
"price-hiller.com" = {
forceSSL = true;
enableACME = true;
@ -32,4 +28,4 @@
locations."/".index = "home.html";
};
};
}
}

View File

@ -0,0 +1,91 @@
{ ... }:
{
programs.git = {
enable = true;
userName = "Price Hiller";
# TODO: Migrate GPG to price@price-hiller.com
userEmail = "price@orion-technologies.io";
aliases = {
unstage = "reset HEAD --";
};
extraConfig = {
init.defaultBranch = "main";
merge.conflictstyle = "zdiff3";
branch.autosetupmerge = "always";
remote.pushDefault = "origin";
am.threeWay = true;
apply.ignoreWhitespace = "change";
# SEC: Integrate https://github.com/git-ecosystem/git-credential-manager with GPG to improve
# security stance around the credential store
credential.helper = "store";
pull.rebase = true;
commit.gpgsign = true;
transfer.fsckObjects = true;
receive.fsckObjects = true;
status.submoduleSummary = true;
submodule.recurse = true;
fetch = {
fsckObjects = true;
prune = true;
prunetags = true;
};
rebase = {
autosquash = true;
autostash = true;
updateRefs = true;
};
log = {
abbrevCommit = true;
decorate = "short";
date = "iso";
};
rerere = {
enabled = true;
autoUpdate = true;
};
core = {
ignorecase = false;
quotePath = false;
};
diff = {
colorMoved = "default";
submodule = "log";
tool = "nvimdiff";
};
push = {
autoSetupRemote = true;
default = "current";
};
};
signing = {
signByDefault = true;
key = null;
};
delta = {
enable = true;
options = {
navigate = true;
features = "interactive decorations";
interactive = {
keep-plus-minus-markers = false;
};
decorations = {
commit-decoration-style = "bold box ul";
dark = true;
file-style = "omit";
hunk-header-decoration-style = ''"#022b45" box ul'';
hunk-header-file-style = ''"#999999"'';
hunk-header-style = "file line-number syntax";
line-numbers = true;
line-numbers-left-style = ''"#022b45"'';
minus-emph-style = ''normal "#80002a"'';
minus-style = ''normal "#330011"'';
plus-emph-style = ''syntax "#003300"'';
plus-style = ''syntax "#001a00"'';
syntax-theme = "Solarized (dark)";
};
};
};
};
}

View File

@ -5,11 +5,11 @@
matchBlocks =
rec {
luna = {
hostname = "luna.hosts.orion-technologies.io";
hostname = "luna.hosts.price-hiller.com";
user = "price";
port = 2200;
};
"luna.hosts.orion-technologies.io" = luna;
"luna.hosts.price-hiller.com" = luna;
asgard = {
hostname = "asgard-eternal.com";
user = "asgard";

View File

@ -11,9 +11,9 @@ return {
},
keys = {
{ "<localleader>n", desc = "> Neotest" },
{ "<localleader>nrr", "<cmd>Neotest run<CR>", desc = "Neotest: Run Test" },
{ "<localleader>nrl", "<cmd>Neotest run file<CR>", desc = "Neotest: Run Tests in File" },
{ "<localleader>nrl", "<cmd>Neotest run last<CR>", desc = "Neotest: Run Last Tests" },
{ "<localleader>nr", "<cmd>Neotest run<CR>", desc = "Neotest: Run Test" },
{ "<localleader>nf", "<cmd>Neotest run file<CR>", desc = "Neotest: Run Test(s) in File" },
{ "<localleader>nl", "<cmd>Neotest run last<CR>", desc = "Neotest: Run Last Test(s)" },
{ "<localleader>np", "<cmd>Neotest output-panel<CR>", desc = "Neotest: Output Panel" },
{ "<localleader>no", "<cmd>Neotest output<CR>", desc = "Neotest: Output" },
{ "<localleader>nn", "<cmd>Neotest summary toggle<CR>", desc = "Neotest: Summary Toggle" },

View File

@ -202,92 +202,6 @@ in
enable = true;
systemd.enable = true;
};
git = {
enable = true;
userName = "Price Hiller";
userEmail = "price@orion-technologies.io";
aliases = {
unstage = "reset HEAD --";
};
extraConfig = {
init.defaultBranch = "main";
merge.conflictstyle = "zdiff3";
branch.autosetupmerge = "always";
remote.pushDefault = "origin";
am.threeWay = true;
apply.ignoreWhitespace = "change";
# SEC: Integrate https://github.com/git-ecosystem/git-credential-manager with GPG to improve
# security stance around the credential store
credential.helper = "store";
pull.rebase = true;
commit.gpgsign = true;
transfer.fsckObjects = true;
receive.fsckObjects = true;
status.submoduleSummary = true;
submodule.recurse = true;
fetch = {
fsckObjects = true;
prune = true;
prunetags = true;
};
rebase = {
autosquash = true;
autostash = true;
updateRefs = true;
};
log = {
abbrevCommit = true;
decorate = "short";
date = "iso";
};
rerere = {
enabled = true;
autoUpdate = true;
};
core = {
ignorecase = false;
quotePath = false;
};
diff = {
colorMoved = "default";
submodule = "log";
tool = "nvimdiff";
};
push = {
autoSetupRemote = true;
default = "current";
};
};
signing = {
signByDefault = true;
key = null;
};
delta = {
enable = true;
options = {
navigate = true;
features = "interactive decorations";
interactive = {
keep-plus-minus-markers = false;
};
decorations = {
commit-decoration-style = "bold box ul";
dark = true;
file-style = "omit";
hunk-header-decoration-style = ''"#022b45" box ul'';
hunk-header-file-style = ''"#999999"'';
hunk-header-style = "file line-number syntax";
line-numbers = true;
line-numbers-left-style = ''"#022b45"'';
minus-emph-style = ''normal "#80002a"'';
minus-style = ''normal "#330011"'';
plus-emph-style = ''syntax "#003300"'';
plus-style = ''syntax "#001a00"'';
syntax-theme = "Solarized (dark)";
};
};
};
};
};
qt = {