mirror of
https://gitlab.com/upRootNutrition/dotfiles.git
synced 2025-08-08 12:54:38 -05:00
feat: refactored wireguard and fixed self-hosted bookmarks
This commit is contained in:
parent
5c1d3e6356
commit
cd118791e5
14 changed files with 55 additions and 128 deletions
|
@ -3,12 +3,6 @@ let
|
|||
|
||||
inherit (flake.config.people) user0;
|
||||
user = config.home.username;
|
||||
keyLogic =
|
||||
if user == user0 then
|
||||
"$env.ANTHROPIC_API_KEY = (open /home/${user0}/.config/zed/claude-api-key)"
|
||||
else
|
||||
"";
|
||||
|
||||
in
|
||||
{
|
||||
programs.nushell = {
|
||||
|
@ -16,7 +10,6 @@ in
|
|||
configFile.text = ''
|
||||
sleep 7ms
|
||||
$env.config = {show_banner: false}
|
||||
${keyLogic}
|
||||
'';
|
||||
shellAliases = {
|
||||
y = "yy";
|
||||
|
|
|
@ -31,7 +31,6 @@ in
|
|||
lutris
|
||||
heroic
|
||||
zed
|
||||
vsCode
|
||||
feishin
|
||||
obsidian
|
||||
libreOffice
|
||||
|
|
|
@ -21,12 +21,11 @@ in
|
|||
keyword = "Discord";
|
||||
}
|
||||
{
|
||||
name = "Elm-UI";
|
||||
url = "https://package.elm-lang.org/packages/mdgriffith/elm-ui/latest/";
|
||||
name = "Elm Packages";
|
||||
url = "https://package.elm-lang.org/packages";
|
||||
tags = [
|
||||
"elm-ui"
|
||||
"elm"
|
||||
"ui"
|
||||
"packages"
|
||||
];
|
||||
keyword = "Elm";
|
||||
}
|
||||
|
@ -52,7 +51,7 @@ in
|
|||
}
|
||||
{
|
||||
name = "GitLab (Fallaryn)";
|
||||
url = "${gitlabURL}/fallaryn/dotfiles";
|
||||
url = "${gitlabURL}/fallaryn";
|
||||
tags = [
|
||||
"fallaryn"
|
||||
] ++ gitlabTags;
|
||||
|
@ -60,7 +59,7 @@ in
|
|||
}
|
||||
{
|
||||
name = "GitLab (Isaac)";
|
||||
url = "${gitlabURL}/askyourself/dotfiles";
|
||||
url = "${gitlabURL}/askyourself";
|
||||
tags = [
|
||||
"isaac"
|
||||
"askyourself"
|
||||
|
@ -69,9 +68,9 @@ in
|
|||
}
|
||||
{
|
||||
name = "GitLab (Nick)";
|
||||
url = "${gitlabURL}/upRootNutrition/dotfiles";
|
||||
url = "${gitlabURL}/upRootNutrition";
|
||||
tags = [
|
||||
"brbwaffles"
|
||||
"uprootnutrition"
|
||||
] ++ gitlabTags;
|
||||
keyword = "GitLab";
|
||||
}
|
||||
|
@ -85,14 +84,5 @@ in
|
|||
];
|
||||
keyword = "Hack";
|
||||
}
|
||||
{
|
||||
name = "Discord-Haskell";
|
||||
url = "https://hackage.haskell.org/package/discord-haskell-1.17.1";
|
||||
tags = [
|
||||
"discord"
|
||||
"haskell"
|
||||
];
|
||||
keyword = "Dack";
|
||||
}
|
||||
];
|
||||
}
|
||||
|
|
|
@ -51,7 +51,7 @@ in
|
|||
}
|
||||
{
|
||||
name = instances.forgejo.label;
|
||||
url = "https://${instances.forgejo.subdomain}.${instances.web.domains.url3}";
|
||||
url = "https://${instances.forgejo.domains.url0}";
|
||||
tags = [
|
||||
instances.forgejo.name
|
||||
"forge"
|
||||
|
@ -59,19 +59,9 @@ in
|
|||
];
|
||||
keyword = instances.forgejo.label;
|
||||
}
|
||||
# {
|
||||
# name = instances.hledger.label;
|
||||
# url = "http://localhost.${builtins.toString instances.hledger.ports.port0}";
|
||||
# tags = [
|
||||
# instances.hledger.name
|
||||
# "hledger"
|
||||
# "finances"
|
||||
# ];
|
||||
# keyword = instances.hledger.label;
|
||||
# }
|
||||
{
|
||||
name = "${instances.jellyfin.label} (Internet)";
|
||||
url = "https://${instances.jellyfin.name}.${instances.web.domains.url0}";
|
||||
url = "https://${instances.jellyfin.domains.url0}";
|
||||
tags = jellyfinTags;
|
||||
keyword = instances.jellyfin.label;
|
||||
}
|
||||
|
@ -83,7 +73,7 @@ in
|
|||
}
|
||||
{
|
||||
name = instances.mastodon.label;
|
||||
url = "https://${instances.mastodon.subdomain}.${instances.web.domains.url3}";
|
||||
url = "https://${instances.mastodon.domains.url0}";
|
||||
tags = [
|
||||
instances.mastodon.name
|
||||
"mast"
|
||||
|
@ -104,7 +94,7 @@ in
|
|||
}
|
||||
{
|
||||
name = instances.nextcloud.label;
|
||||
url = "https://${instances.nextcloud.subdomain}.${instances.web.domains.url1}";
|
||||
url = "https://${instances.nextcloud.domains.url0}";
|
||||
tags = [
|
||||
instances.nextcloud.name
|
||||
"next"
|
||||
|
@ -124,7 +114,7 @@ in
|
|||
}
|
||||
{
|
||||
name = "${instances.glance.label} (Local)";
|
||||
url = "http://${instances.web.localhost.address0}:${toString instances.glance.ports.port0}";
|
||||
url = "https://${instances.glance.domains.url0}";
|
||||
tags = [
|
||||
"glance"
|
||||
"dashboard"
|
||||
|
@ -135,7 +125,7 @@ in
|
|||
}
|
||||
{
|
||||
name = "${instances.ollama.label} (Server)";
|
||||
url = "https://${instances.ollama.subdomain}.${instances.web.domains.url0}";
|
||||
url = "https://${instances.ollama.domains.url0}";
|
||||
tags = ollamaTags;
|
||||
keyword = instances.ollama.label;
|
||||
}
|
||||
|
@ -145,29 +135,6 @@ in
|
|||
tags = ollamaTags;
|
||||
keyword = instances.ollama.label;
|
||||
}
|
||||
# {
|
||||
# name = "${instances.owncast.label} (Admin)";
|
||||
# url = "http://${ceres.ip.address0}:${toString instances.owncast.ports.port0}/admin";
|
||||
# tags = owncastTags;
|
||||
# keyword = instances.owncast.label;
|
||||
# }
|
||||
# {
|
||||
# name = "${instances.owncast.label} (Server)";
|
||||
# url = "http://${instances.owncast.subdomain}.${instances.web.domains.url1}";
|
||||
# tags = owncastTags;
|
||||
# keyword = instances.owncast.label;
|
||||
# }
|
||||
# {
|
||||
# name = instances.peertube.label;
|
||||
# url = "https://${instances.peertube.subdomain}.${instances.web.domains.url3}";
|
||||
# tags = [
|
||||
# instances.peertube.name
|
||||
# "peer"
|
||||
# "tube"
|
||||
# "uprootnutrition"
|
||||
# ];
|
||||
# keyword = instances.peertube.label;
|
||||
# }
|
||||
{
|
||||
name = "Router";
|
||||
url = "http://${instances.web.localhost.address2}";
|
||||
|
@ -179,7 +146,7 @@ in
|
|||
}
|
||||
{
|
||||
name = "${instances.searx.label} (Internet)";
|
||||
url = "https://${instances.searx.subdomain}.${instances.web.domains.url0}";
|
||||
url = "https://${instances.searx.domains.url0}";
|
||||
tags = [
|
||||
"search"
|
||||
"sear"
|
||||
|
@ -215,7 +182,7 @@ in
|
|||
}
|
||||
{
|
||||
name = instances.vaultwarden.label;
|
||||
url = "https://${instances.vaultwarden.subdomain}.${instances.web.domains.url0}";
|
||||
url = "https://${instances.vaultwarden.domains.url0}";
|
||||
tags = [
|
||||
instances.vaultwarden.name
|
||||
"bitwarden"
|
||||
|
|
|
@ -90,15 +90,6 @@
|
|||
];
|
||||
keyword = "Deep";
|
||||
}
|
||||
{
|
||||
name = "Uncensored AI";
|
||||
url = "https://www.aiuncensored.info";
|
||||
tags = [
|
||||
"uncensored"
|
||||
"ai"
|
||||
];
|
||||
keyword = "AI";
|
||||
}
|
||||
{
|
||||
name = "Canadian Blood Services";
|
||||
url = "https://www.blood.ca/en";
|
||||
|
|
|
@ -29,11 +29,10 @@ in
|
|||
"terminal.integrated.fontSize" = fonts.sizes.applications;
|
||||
"terminal.integrated.fontFamily" = "'${fonts.name}', 'monospace', monospace";
|
||||
"editor.fontLigatures" = true;
|
||||
"editor.formatOnSave" = true;
|
||||
"elmLS.disableElmLSDiagnostics" = true;
|
||||
"elmLS.elmReviewDiagnostics" = "warning";
|
||||
"elmLS.elmReviewPath" =
|
||||
"/nix/store/r19y19rx5b7l4dzapbx1g64d30yisby1-elm-review-2.10.3/bin/elm-review";
|
||||
"editor.formatOnSave" = true;
|
||||
"elmLS.elmReviewPath" = "/etc/profiles/per-user/nick/bin/elm-review";
|
||||
"[elm]" = {
|
||||
"editor.defaultFormatter" = "elmTooling.elm-ls-vscode";
|
||||
};
|
||||
|
|
|
@ -10,5 +10,6 @@ builtins.attrValues {
|
|||
inherit (pkgs.elmPackages)
|
||||
elm-language-server
|
||||
elm-review
|
||||
elm-format
|
||||
;
|
||||
}
|
||||
|
|
|
@ -39,7 +39,7 @@
|
|||
language_servers = [ "elm-language-server" ];
|
||||
format_on_save = {
|
||||
external = {
|
||||
command = "elm-review";
|
||||
command = "elm-format";
|
||||
arguments = [ "--stdin" ];
|
||||
};
|
||||
};
|
||||
|
|
|
@ -18,12 +18,12 @@ let
|
|||
;
|
||||
};
|
||||
extraPackagesPath = import (configPath + /extraPackages) { inherit pkgs; };
|
||||
# packagePath = flake.inputs.zed-editor.packages.${pkgs.system}.default;
|
||||
packagePath = flake.inputs.zed-editor.packages.${pkgs.system}.default;
|
||||
in
|
||||
{
|
||||
programs.zed-editor = {
|
||||
enable = true;
|
||||
# package = packagePath;
|
||||
package = packagePath;
|
||||
extraPackages = extraPackagesPath;
|
||||
extensions = extensionsPath;
|
||||
userKeymaps = userKeymapsPath;
|
||||
|
|
|
@ -7,7 +7,6 @@ in
|
|||
mars = {
|
||||
imports = builtins.attrValues {
|
||||
inherit (modules)
|
||||
mullvad
|
||||
syncthing
|
||||
ollama
|
||||
plasma
|
||||
|
@ -17,6 +16,7 @@ in
|
|||
wayland
|
||||
searx
|
||||
flatpak
|
||||
wireGuard
|
||||
;
|
||||
};
|
||||
};
|
||||
|
@ -31,6 +31,7 @@ in
|
|||
sddm
|
||||
flatpak
|
||||
espanso
|
||||
wireGuard
|
||||
;
|
||||
};
|
||||
};
|
||||
|
|
|
@ -1,7 +1,8 @@
|
|||
{ config, flake, ... }:
|
||||
let
|
||||
inherit (flake.config.services.instances) wireGuard;
|
||||
service = wireGuard;
|
||||
inherit (flake.config.services) instances;
|
||||
inherit (flake.config.machines.devices) ceres;
|
||||
service = instances.wireGuard;
|
||||
wireGuardInterface =
|
||||
{
|
||||
secret,
|
||||
|
@ -49,6 +50,27 @@ let
|
|||
in
|
||||
{
|
||||
networking = {
|
||||
hosts = {
|
||||
${ceres.wireguard.ip0} = [
|
||||
instances.searx.domains.url0
|
||||
instances.glance.domains.url0
|
||||
];
|
||||
};
|
||||
wireguard.interfaces = {
|
||||
wg0 = {
|
||||
peers = [
|
||||
{
|
||||
publicKey = "fs58+Kz+eG9qAXvvMB2NkW+wa88yP61uam4HHWaBJVw=";
|
||||
allowedIPs = [
|
||||
"${ceres.wireguard.ip0}/32"
|
||||
"${instances.web.localhost.address4}/24"
|
||||
];
|
||||
endpoint = "${instances.web.remotehost.address0}:${builtins.toString service.ports.port1}";
|
||||
persistentKeepalive = 25;
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
wg-quick.interfaces = builtins.listToAttrs (map wireGuardInterface interfaces);
|
||||
};
|
||||
|
||||
|
|
|
@ -23,10 +23,10 @@ in
|
|||
path = "/home/${user0}/.ssh/known_hosts";
|
||||
owner = user0;
|
||||
};
|
||||
"claude-api-key" = {
|
||||
path = "/home/${user0}/.config/zed/claude-api-key";
|
||||
owner = user0;
|
||||
};
|
||||
# "claude-api-key" = {
|
||||
# path = "/home/${user0}/.config/zed/claude-api-key";
|
||||
# owner = user0;
|
||||
# };
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue