mirror of
https://github.com/Misterio77/Foundry.git
synced 2026-08-24 10:04:09 -05:00
treewide: migrate domains
This commit is contained in:
Generated
+9
-9
@@ -196,15 +196,15 @@
|
||||
},
|
||||
"impermanence": {
|
||||
"locked": {
|
||||
"lastModified": 1657768550,
|
||||
"narHash": "sha256-9U4yL5iR/NSntuDoKxmhhftyM94YkZrjzmEB1fgqvys=",
|
||||
"owner": "misterio77",
|
||||
"lastModified": 1661590580,
|
||||
"narHash": "sha256-XoPSucNvccnT50LWme/7BiENZDwr8tArEg36OGQFFnA=",
|
||||
"owner": "nix-community",
|
||||
"repo": "impermanence",
|
||||
"rev": "e058964c0b184b95148b336ed0db484cc1f7987c",
|
||||
"rev": "2237ad28093cb53ad2eb0fd1a9f870997287e0fa",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "misterio77",
|
||||
"owner": "nix-community",
|
||||
"repo": "impermanence",
|
||||
"type": "github"
|
||||
}
|
||||
@@ -393,15 +393,15 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1657771335,
|
||||
"lastModified": 1661429880,
|
||||
"narHash": "sha256-7/m468XZW82O7KhDtRdQ7RnPsh83+tA8N4U0FncFo1U=",
|
||||
"owner": "misterio77",
|
||||
"owner": "cid-chan",
|
||||
"repo": "peerix",
|
||||
"rev": "dd421315a08f88d50cdb5fc8e1da584f9a77cf6f",
|
||||
"rev": "32cd1b098b83c90726848bd6726f74e72c557abb",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "misterio77",
|
||||
"owner": "cid-chan",
|
||||
"repo": "peerix",
|
||||
"type": "github"
|
||||
}
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
||||
hardware.url = "github:nixos/nixos-hardware";
|
||||
nur.url = "github:nix-community/NUR";
|
||||
impermanence.url = "github:misterio77/impermanence"; # TODO change to upstream after #99 is merged
|
||||
impermanence.url = "github:nix-community/impermanence";
|
||||
nix-colors.url = "github:misterio77/nix-colors";
|
||||
|
||||
home-manager = {
|
||||
@@ -22,7 +22,7 @@
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
peerix = {
|
||||
url = "github:misterio77/peerix"; # TODO change to upstream after #13 is merged
|
||||
url = "github:cid-chan/peerix";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
nixos-mailserver = {
|
||||
|
||||
@@ -44,7 +44,7 @@ in
|
||||
publicKeys = [
|
||||
{
|
||||
source = fetchKey {
|
||||
url = "https://fontes.dev.br/7088C7421873E0DB97FF17C2245CAB70B4C225E9.asc";
|
||||
url = "https://gsfontes.com/7088C7421873E0DB97FF17C2245CAB70B4C225E9.asc";
|
||||
sha256 = "sha256:1d3qjnj27qygs9vbc61c7g5a84mfrj45ajsc8dgsjbibvml7l915";
|
||||
};
|
||||
trust = 5;
|
||||
|
||||
@@ -7,7 +7,14 @@ in
|
||||
programs.ssh = {
|
||||
enable = true;
|
||||
matchBlocks.home = {
|
||||
host = builtins.concatStringsSep " " (hostnames ++ [ "fontes.dev.br" "*.fontes.dev.br" "misterio.me" "*.misterio.me" ]);
|
||||
host = builtins.concatStringsSep " " (hostnames ++ [
|
||||
"misterio.me"
|
||||
"*.misterio.me"
|
||||
"*.ts.misterio.me"
|
||||
"m7.rs"
|
||||
"*.m7.rs"
|
||||
"*.ts.m7.rs"
|
||||
]);
|
||||
forwardAgent = true;
|
||||
remoteForwards = [{
|
||||
bind.address = ''/run/user/1000/gnupg/S.gpg-agent'';
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
programs.xpo = {
|
||||
enable = true;
|
||||
defaultServer = "electra.fontes.dev.br";
|
||||
defaultServer = "m7.rs";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ config, persistence, lib, ... }: {
|
||||
{ persistence, lib, ... }: {
|
||||
home.persistence = lib.mkIf persistence {
|
||||
"/persist/games/misterio" = {
|
||||
allowOther = true;
|
||||
@@ -11,7 +11,7 @@
|
||||
".local/share/Paradox Interactive"
|
||||
".paradoxlauncher"
|
||||
{
|
||||
path = ".local/share/Steam";
|
||||
directory = ".local/share/Steam";
|
||||
method = "symlink";
|
||||
}
|
||||
];
|
||||
|
||||
@@ -15,12 +15,13 @@ let
|
||||
text = ''
|
||||
${realName}
|
||||
|
||||
https://misterio.me
|
||||
https://gsfontes.com
|
||||
PGP: ${gpg.key}
|
||||
'';
|
||||
};
|
||||
};
|
||||
in {
|
||||
in
|
||||
{
|
||||
home.persistence = lib.mkIf persistence {
|
||||
"/persist/home/misterio".directories = [ "Mail" ];
|
||||
};
|
||||
@@ -30,13 +31,14 @@ in {
|
||||
accounts = {
|
||||
personal = rec {
|
||||
primary = true;
|
||||
# TODO update email
|
||||
address = "eu@misterio.me";
|
||||
address = "gabriel@gsfontes.com";
|
||||
userName = address;
|
||||
passwordCommand = "${pass} mail.gandi.net/${address}";
|
||||
imap.host = "mail.gandi.net";
|
||||
smtp.host = "mail.gandi.net";
|
||||
folders = { inbox = "INBOX"; };
|
||||
passwordCommand = "${pass} mail1.netim.hosting/${address}";
|
||||
imap.host = "mail1.netim.hosting";
|
||||
smtp.host = "mail1.netim.hosting";
|
||||
folders = {
|
||||
inbox = "INBOX";
|
||||
};
|
||||
mbsync = {
|
||||
enable = true;
|
||||
create = "maildir";
|
||||
|
||||
@@ -95,7 +95,7 @@
|
||||
}
|
||||
];
|
||||
extraConfig = ''
|
||||
alternates "eu@misterio.me|gabriel.fontes@uget.express|g.fontes@usp.br|gabriel@fontes.dev.br"
|
||||
alternates "gabriel@gsfontes.com|hi@m7.rs|eu@misterio.me|gabriel.fontes@uget.express|g.fontes@usp.br"
|
||||
'' + ''
|
||||
# From: https://github.com/altercation/mutt-colors-solarized/blob/master/mutt-colors-solarized-dark-16.muttrc
|
||||
|
||||
|
||||
@@ -8,6 +8,7 @@ in {
|
||||
[ "Calendars" "Contacts" ".local/share/vdirsyncer" ];
|
||||
};
|
||||
|
||||
# TODO: migrate caldav and carddav elsewhere
|
||||
xdg.configFile."vdirsyncer/config".text = ''
|
||||
[general]
|
||||
status_path = "~/.local/share/vdirsyncer/status"
|
||||
@@ -48,6 +49,7 @@ in {
|
||||
password.fetch = ["command", "${pass}", "mail.gandi.net/eu@misterio.me"]
|
||||
'';
|
||||
|
||||
/*
|
||||
systemd.user.services.vdirsyncer = {
|
||||
Unit = { Description = "vdirsyncer synchronization"; };
|
||||
Service = let keyring = import ./keyring.nix { inherit pkgs; };
|
||||
@@ -67,4 +69,5 @@ in {
|
||||
};
|
||||
Install = { WantedBy = [ "timers.target" ]; };
|
||||
};
|
||||
*/
|
||||
}
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
|
||||
networking = {
|
||||
hostName = hostname;
|
||||
domain = "fontes.dev.br";
|
||||
domain = "m7.rs";
|
||||
};
|
||||
|
||||
environment = {
|
||||
|
||||
@@ -4,24 +4,22 @@ let
|
||||
in
|
||||
{
|
||||
services = {
|
||||
nginx.virtualHosts = {
|
||||
"fontes.dev.br" = {
|
||||
forceSSL = true;
|
||||
enableACME = true;
|
||||
locations = {
|
||||
"=/git/style.css" = {
|
||||
alias = "${./cgit.css}";
|
||||
};
|
||||
"=/git".return = "301 https://fontes.dev.br/git/";
|
||||
"/git/" = {
|
||||
root = "${cgit}/cgit";
|
||||
extraConfig = ''
|
||||
rewrite ^/git/(.*) /$1 break;
|
||||
include ${pkgs.nginx}/conf/uwsgi_params;
|
||||
uwsgi_modifier1 9;
|
||||
uwsgi_pass unix:/run/uwsgi/cgit.sock;
|
||||
'';
|
||||
};
|
||||
nginx.virtualHosts."gsfontes.com" = {
|
||||
forceSSL = true;
|
||||
enableACME = true;
|
||||
locations = {
|
||||
"=/git/style.css" = {
|
||||
alias = "${./cgit.css}";
|
||||
};
|
||||
"=/git".return = "301 https://gsfontes.com/git/";
|
||||
"/git/" = {
|
||||
root = "${cgit}/cgit";
|
||||
extraConfig = ''
|
||||
rewrite ^/git/(.*) /$1 break;
|
||||
include ${pkgs.nginx}/conf/uwsgi_params;
|
||||
uwsgi_modifier1 9;
|
||||
uwsgi_pass unix:/run/uwsgi/cgit.sock;
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
@@ -57,7 +55,6 @@ in
|
||||
|
||||
root-title=My git repos
|
||||
root-desc=Source code for some of my projects
|
||||
logo-link=https://fontes.dev.br
|
||||
|
||||
enable-http-clone=1
|
||||
noplainemail=1
|
||||
|
||||
@@ -5,33 +5,32 @@
|
||||
enable = true;
|
||||
address = "0.0.0.0";
|
||||
dns = {
|
||||
baseDomain = "fontes.dev.br";
|
||||
baseDomain = "m7.rs";
|
||||
magicDns = true;
|
||||
domains = [ "ts.fontes.dev.br" ];
|
||||
domains = [ "ts.m7.rs" ];
|
||||
nameservers = [
|
||||
"9.9.9.9"
|
||||
];
|
||||
};
|
||||
port = 8085;
|
||||
serverUrl = "https://tailscale.fontes.dev.br";
|
||||
serverUrl = "https://tailscale.m7.rs";
|
||||
logLevel = "warn";
|
||||
settings = {
|
||||
logtail.enabled = false;
|
||||
};
|
||||
};
|
||||
|
||||
nginx.virtualHosts = let
|
||||
location = "http://localhost:${toString config.services.headscale.port}";
|
||||
in {
|
||||
"tailscale.fontes.dev.br" = {
|
||||
nginx.virtualHosts = {
|
||||
"tailscale.m7.rs" = {
|
||||
forceSSL = true;
|
||||
enableACME = true;
|
||||
locations."/".proxyPass = location;
|
||||
locations."/".proxyPass =
|
||||
"http://localhost:${toString config.services.headscale.port}";
|
||||
};
|
||||
"tailscale.misterio.me" = {
|
||||
forceSSL = true;
|
||||
enableACME = true;
|
||||
locations."/".proxyPass = location;
|
||||
locations."/".return = "302 https://tailscale.m7.rs$request_uri";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
@@ -6,16 +6,16 @@
|
||||
|
||||
mailserver = {
|
||||
enable = true;
|
||||
fqdn = "mail.fontes.dev.br";
|
||||
sendingFqdn = "electra.fontes.dev.br";
|
||||
domains = [ "fontes.dev.br" ];
|
||||
fqdn = "mail.m7.rs";
|
||||
sendingFqdn = "electra.m7.rs";
|
||||
domains = [ "m7.rs" ];
|
||||
useFsLayout = true;
|
||||
certificateScheme = 3;
|
||||
localDnsResolver = false;
|
||||
loginAccounts = {
|
||||
"gabriel@fontes.dev.br" = {
|
||||
"hi@m7.rs" = {
|
||||
hashedPasswordFile = config.sops.secrets.gabriel-mail-password.path;
|
||||
aliases = [ "@fontes.dev.br" ];
|
||||
aliases = [ "@m7.rs" ];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
@@ -6,60 +6,63 @@ let
|
||||
echo -n ''${dt/+0000/GMT} > $out
|
||||
''
|
||||
);
|
||||
redir = {
|
||||
forceSSL = true;
|
||||
enableACME = true;
|
||||
locations."/".return = "302 https://gsfontes.com$request_uri";
|
||||
};
|
||||
in
|
||||
{
|
||||
services =
|
||||
let
|
||||
redir = {
|
||||
services = {
|
||||
nginx.virtualHosts = {
|
||||
"m7.rs" = redir;
|
||||
"misterio.me" = redir;
|
||||
"fontes.dev.br" = redir;
|
||||
"gsfontes.com" = {
|
||||
default = true;
|
||||
forceSSL = true;
|
||||
enableACME = true;
|
||||
locations."/" = {
|
||||
return = "302 https://fontes.dev.br$request_uri";
|
||||
};
|
||||
};
|
||||
in
|
||||
{
|
||||
nginx.virtualHosts = {
|
||||
"misterio.me" = redir;
|
||||
"www.fontes.dev.br" = redir;
|
||||
"gabriel.fontes.dev.br" = redir;
|
||||
"fontes.dev.br" = {
|
||||
default = true;
|
||||
forceSSL = true;
|
||||
enableACME = true;
|
||||
locations = {
|
||||
"/" = {
|
||||
root = "${pkgs.website.main}/public";
|
||||
extraConfig = ''
|
||||
add_header Last-Modified "${toDateTime inputs.website.lastModified}";
|
||||
add_header Cache-Control max-age="${toString (60 * 60 * 24 /* One day */)}";
|
||||
'';
|
||||
};
|
||||
"/assets" = {
|
||||
root = "${pkgs.website.main}/public";
|
||||
extraConfig = ''
|
||||
add_header Last-Modified "${toDateTime inputs.website.lastModified}";
|
||||
add_header Cache-Control max-age="${toString (30 * 60 * 60 * 24 /* One month */)}";
|
||||
'';
|
||||
};
|
||||
locations = {
|
||||
"/" = {
|
||||
root = "${pkgs.website.main}/public";
|
||||
extraConfig = ''
|
||||
add_header Last-Modified "${toDateTime inputs.website.lastModified}";
|
||||
add_header Cache-Control max-age="${toString (60 * 60 * 24 /* One day */)}";
|
||||
'';
|
||||
};
|
||||
"/assets" = {
|
||||
root = "${pkgs.website.main}/public";
|
||||
extraConfig = ''
|
||||
add_header Last-Modified "${toDateTime inputs.website.lastModified}";
|
||||
add_header Cache-Control max-age="${toString (30 * 60 * 60 * 24 /* One month */)}";
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
# Gemini
|
||||
agate = {
|
||||
enable = true;
|
||||
contentDir = pkgs.linkFarm "agate-website" [
|
||||
{
|
||||
name = "misterio.me";
|
||||
path = "${pkgs.website.main}/public";
|
||||
}
|
||||
{
|
||||
name = "fontes.dev.br";
|
||||
path = "${pkgs.website.main}/public";
|
||||
}
|
||||
];
|
||||
hostnames = [ "misterio.me" "fontes.dev.br" ];
|
||||
};
|
||||
};
|
||||
# Gemini
|
||||
agate = {
|
||||
enable = true;
|
||||
contentDir = pkgs.linkFarm "agate-website" [
|
||||
{
|
||||
name = "misterio.me";
|
||||
path = "${pkgs.website.main}/public";
|
||||
}
|
||||
{
|
||||
name = "fontes.dev.br";
|
||||
path = "${pkgs.website.main}/public";
|
||||
}
|
||||
{
|
||||
name = "m7.rs";
|
||||
path = "${pkgs.website.main}/public";
|
||||
}
|
||||
{
|
||||
name = "gsfontes.com";
|
||||
path = "${pkgs.website.main}/public";
|
||||
}
|
||||
];
|
||||
hostnames = [ "misterio.me" "fontes.dev.br" "m7.rs" "gsfontes.com" ];
|
||||
};
|
||||
};
|
||||
networking.firewall.allowedTCPPorts = [ 1965 ];
|
||||
}
|
||||
|
||||
@@ -39,11 +39,13 @@ in
|
||||
};
|
||||
|
||||
# Proxy for squaremap
|
||||
services.nginx.virtualHosts."mc.misterio.me" = {
|
||||
/*
|
||||
services.nginx.virtualHosts."mc.m7.rs" = {
|
||||
forceSSL = true;
|
||||
enableACME = true;
|
||||
locations."/".proxyPass = "http://localhost:8123";
|
||||
};
|
||||
*/
|
||||
|
||||
# Open ports
|
||||
networking.firewall = {
|
||||
|
||||
@@ -1,8 +1,20 @@
|
||||
{
|
||||
services.nginx.virtualHosts."files.misterio.me" = {
|
||||
default = true;
|
||||
forceSSL = true;
|
||||
enableACME = true;
|
||||
locations."/".root = "/media/files";
|
||||
services.nginx.virtualHosts = {
|
||||
"files.m7.rs" = {
|
||||
default = true;
|
||||
forceSSL = true;
|
||||
enableACME = true;
|
||||
locations."/".root = "/media/files";
|
||||
};
|
||||
"f.m7.rs" = {
|
||||
forceSSL = true;
|
||||
enableACME = true;
|
||||
locations."/".return = "302 https://files.m7.rs$request_uri";
|
||||
};
|
||||
"files.misterio.me" = {
|
||||
forceSSL = true;
|
||||
enableACME = true;
|
||||
locations."/".return = "302 https://files.m7.rs$request_uri";
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -11,17 +11,19 @@
|
||||
};
|
||||
};
|
||||
|
||||
nginx.virtualHosts =
|
||||
let
|
||||
location = "http://localhost:${toString config.services.navidrome.settings.Port}";
|
||||
in
|
||||
{
|
||||
"music.misterio.me" = {
|
||||
forceSSL = true;
|
||||
enableACME = true;
|
||||
locations."/".proxyPass = location;
|
||||
};
|
||||
nginx.virtualHosts = {
|
||||
"music.m7.rs" = {
|
||||
forceSSL = true;
|
||||
enableACME = true;
|
||||
locations."/".proxyPass =
|
||||
"http://localhost:${toString config.services.navidrome.settings.Port}";
|
||||
};
|
||||
"music.misterio.me" = {
|
||||
forceSSL = true;
|
||||
enableACME = true;
|
||||
locations."/".return = "302 https://music.m7.rs$request_uri";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
environment.persistence = lib.mkIf persistence {
|
||||
|
||||
@@ -17,17 +17,12 @@
|
||||
}];
|
||||
};
|
||||
|
||||
nginx.virtualHosts =
|
||||
let
|
||||
location = "http://localhost:${toString config.services.paste-misterio-me.port}";
|
||||
in
|
||||
{
|
||||
"paste.misterio.me" = {
|
||||
forceSSL = true;
|
||||
enableACME = true;
|
||||
locations."/".proxyPass = location;
|
||||
};
|
||||
};
|
||||
nginx.virtualHosts."paste.misterio.me" = {
|
||||
forceSSL = true;
|
||||
enableACME = true;
|
||||
locations."/".proxyPass =
|
||||
"http://localhost:${toString config.services.paste-misterio-me.port}";
|
||||
};
|
||||
};
|
||||
|
||||
sops.secrets.paste-misterio-me-key = {
|
||||
|
||||
Reference in New Issue
Block a user