Compare commits
No commits in common. "eebf8c8bb6a169c9235d07d7363adfefb00ee65d" and "e158434595f4ddf37429d039373a395db24fc17f" have entirely different histories.
eebf8c8bb6
...
e158434595
2
.gitmodules
vendored
2
.gitmodules
vendored
@ -24,4 +24,4 @@
|
|||||||
url = https://github.com/romkatv/powerlevel10k.git
|
url = https://github.com/romkatv/powerlevel10k.git
|
||||||
[submodule "secrets"]
|
[submodule "secrets"]
|
||||||
path = secrets
|
path = secrets
|
||||||
url = ssh://gitea@git.price-hiller.com:2220/Price/Secrets.git
|
url = ssh://gitea@git.orion-technologies.io:2220/Price/Secrets.git
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
* Price Hiller's Dots
|
* Price Hiller's Dots
|
||||||
This is a mirror from my Git server over [[https://git.price-hiller.com/Price/dots][here]].
|
This is a mirror from my Git server over [[https://git.orion-technologies.io/Price/dots][here]].
|
||||||
|
|
||||||
These are my dot files. All the actual dots can be found under ~users/price/dots/~.
|
These are my dot files. All the actual dots can be found under ~users/price/dots/~.
|
||||||
|
|
||||||
|
@ -19,7 +19,10 @@
|
|||||||
url = "github:nix-community/home-manager";
|
url = "github:nix-community/home-manager";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
wezterm.url = "github:wez/wezterm?dir=nix";
|
wezterm = {
|
||||||
|
url = "github:wez/wezterm?dir=nix";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
};
|
||||||
agenix = {
|
agenix = {
|
||||||
url = "github:yaxitech/ragenix";
|
url = "github:yaxitech/ragenix";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
@ -32,7 +35,7 @@
|
|||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
blog = {
|
blog = {
|
||||||
url = "git+https://git.price-hiller.com/blog/blog";
|
url = "git+https://git.orion-technologies.io/blog/blog";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
emacs-overlay = {
|
emacs-overlay = {
|
||||||
@ -249,7 +252,7 @@
|
|||||||
in
|
in
|
||||||
{
|
{
|
||||||
luna = {
|
luna = {
|
||||||
hostname = "luna.hosts.price-hiller.com";
|
hostname = "luna.hosts.orion-technologies.io";
|
||||||
fastConnection = true;
|
fastConnection = true;
|
||||||
profiles.system = {
|
profiles.system = {
|
||||||
sshUser = "price";
|
sshUser = "price";
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{ config, ... }:
|
{ config, ... }:
|
||||||
let
|
let
|
||||||
grafana_host = "grafana.${config.networking.domain}";
|
grafana_host = "grafana.orion-technologies.io";
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
services = {
|
services = {
|
||||||
@ -23,4 +23,4 @@ in
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{ config, pkgs, ... }:
|
{ config, pkgs, ... }:
|
||||||
let
|
let
|
||||||
prometheus_host = "prometheus.${config.networking.domain}";
|
prometheus_host = "prometheus.orion-technologies.io";
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
services = {
|
services = {
|
||||||
@ -89,4 +89,4 @@ in
|
|||||||
group = "prometheus";
|
group = "prometheus";
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
@ -1,22 +1,105 @@
|
|||||||
{ hostname, config, ... }:
|
{ hostname, ... }:
|
||||||
|
|
||||||
|
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 = {
|
services.resolved = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
dnssec = "allow-downgrade";
|
||||||
domains = [ "~." ];
|
domains = [ "~." ];
|
||||||
dnsovertls = "true";
|
fallbackDns = resolved_fallback_nameservers;
|
||||||
dnssec = "false";
|
llmnr = "resolve";
|
||||||
|
extraConfig = ''
|
||||||
|
MulticastDNS=yes
|
||||||
|
DNSOverTLS=yes
|
||||||
|
CacheFromLocalhost=no
|
||||||
|
Cache=yes
|
||||||
|
'';
|
||||||
};
|
};
|
||||||
networking = {
|
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;
|
useNetworkd = true;
|
||||||
|
enableIPv6 = true;
|
||||||
|
nameservers = resolved_nameservers;
|
||||||
|
nftables.enable = true;
|
||||||
|
firewall = {
|
||||||
|
enable = true;
|
||||||
|
allowedTCPPorts = [
|
||||||
|
80
|
||||||
|
443
|
||||||
|
2200
|
||||||
|
];
|
||||||
|
};
|
||||||
|
hostName = "${hostname}";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
let
|
let
|
||||||
gitea_host = "git.${config.networking.domain}";
|
gitea_host = "git.orion-technologies.io";
|
||||||
# TODO: Move this docker image out to a separate package and NixOS Module
|
# 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
|
# Huge thank you to https://icewind.nl/entry/gitea-actions-nix/ -- wouldn't have figured this out
|
||||||
# without that post 🙂
|
# without that post 🙂
|
||||||
@ -157,4 +157,4 @@ in
|
|||||||
group = config.services.gitea.group;
|
group = config.services.gitea.group;
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
@ -10,11 +10,15 @@
|
|||||||
|
|
||||||
security.acme = {
|
security.acme = {
|
||||||
acceptTerms = true;
|
acceptTerms = true;
|
||||||
defaults.email = "price@price-hiller.com";
|
defaults.email = "price@orion-technologies.io";
|
||||||
};
|
};
|
||||||
|
|
||||||
networking.firewall.allowedTCPPorts = [ 80 443 ];
|
|
||||||
services.nginx.virtualHosts = {
|
services.nginx.virtualHosts = {
|
||||||
|
"blog.orion-technologies.io" = {
|
||||||
|
forceSSL = true;
|
||||||
|
enableACME = true;
|
||||||
|
globalRedirect = "price-hiller.com";
|
||||||
|
};
|
||||||
"price-hiller.com" = {
|
"price-hiller.com" = {
|
||||||
forceSSL = true;
|
forceSSL = true;
|
||||||
enableACME = true;
|
enableACME = true;
|
||||||
@ -28,4 +32,4 @@
|
|||||||
locations."/".index = "home.html";
|
locations."/".index = "home.html";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -1,91 +0,0 @@
|
|||||||
{ ... }:
|
|
||||||
{
|
|
||||||
|
|
||||||
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)";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
@ -5,11 +5,11 @@
|
|||||||
matchBlocks =
|
matchBlocks =
|
||||||
rec {
|
rec {
|
||||||
luna = {
|
luna = {
|
||||||
hostname = "luna.hosts.price-hiller.com";
|
hostname = "luna.hosts.orion-technologies.io";
|
||||||
user = "price";
|
user = "price";
|
||||||
port = 2200;
|
port = 2200;
|
||||||
};
|
};
|
||||||
"luna.hosts.price-hiller.com" = luna;
|
"luna.hosts.orion-technologies.io" = luna;
|
||||||
asgard = {
|
asgard = {
|
||||||
hostname = "asgard-eternal.com";
|
hostname = "asgard-eternal.com";
|
||||||
user = "asgard";
|
user = "asgard";
|
||||||
|
@ -11,9 +11,9 @@ return {
|
|||||||
},
|
},
|
||||||
keys = {
|
keys = {
|
||||||
{ "<localleader>n", desc = "> Neotest" },
|
{ "<localleader>n", desc = "> Neotest" },
|
||||||
{ "<localleader>nr", "<cmd>Neotest run<CR>", desc = "Neotest: Run Test" },
|
{ "<localleader>nrr", "<cmd>Neotest run<CR>", desc = "Neotest: Run Test" },
|
||||||
{ "<localleader>nf", "<cmd>Neotest run file<CR>", desc = "Neotest: Run Test(s) in File" },
|
{ "<localleader>nrl", "<cmd>Neotest run file<CR>", desc = "Neotest: Run Tests in File" },
|
||||||
{ "<localleader>nl", "<cmd>Neotest run last<CR>", desc = "Neotest: Run Last Test(s)" },
|
{ "<localleader>nrl", "<cmd>Neotest run last<CR>", desc = "Neotest: Run Last Tests" },
|
||||||
{ "<localleader>np", "<cmd>Neotest output-panel<CR>", desc = "Neotest: Output Panel" },
|
{ "<localleader>np", "<cmd>Neotest output-panel<CR>", desc = "Neotest: Output Panel" },
|
||||||
{ "<localleader>no", "<cmd>Neotest output<CR>", desc = "Neotest: Output" },
|
{ "<localleader>no", "<cmd>Neotest output<CR>", desc = "Neotest: Output" },
|
||||||
{ "<localleader>nn", "<cmd>Neotest summary toggle<CR>", desc = "Neotest: Summary Toggle" },
|
{ "<localleader>nn", "<cmd>Neotest summary toggle<CR>", desc = "Neotest: Summary Toggle" },
|
||||||
|
@ -202,6 +202,92 @@ in
|
|||||||
enable = true;
|
enable = true;
|
||||||
systemd.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 = {
|
qt = {
|
||||||
|
Loading…
Reference in New Issue
Block a user