Compare commits
No commits in common. "0fbb4e1de7f865ac437662f6ebfc087deae635f6" and "05b1ee63b9c9d9e1319506eb88244044b93dfc43" have entirely different histories.
0fbb4e1de7
...
05b1ee63b9
2 changed files with 123 additions and 17 deletions
|
@ -31,29 +31,126 @@
|
||||||
networking.firewall.allowedTCPPorts = [
|
networking.firewall.allowedTCPPorts = [
|
||||||
80
|
80
|
||||||
443
|
443
|
||||||
|
1935 # the RTMP port for OwnCast
|
||||||
|
6667 # irc plaintext
|
||||||
25565 # minecraft
|
25565 # minecraft
|
||||||
];
|
];
|
||||||
|
|
||||||
services.forgejo = {
|
services.owncast = {
|
||||||
enable = true;
|
enable = true;
|
||||||
lfs.enable = true;
|
port = 8001;
|
||||||
|
};
|
||||||
|
|
||||||
|
services.ergochat = {
|
||||||
|
enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
server = {
|
accounts = {
|
||||||
DOMAIN = "git.nazrin.limited";
|
authentication-enabled = true;
|
||||||
ROOT_URL = "https://git.nazrin.limited/";
|
multiclient = {
|
||||||
HTTP_PORT = 3000;
|
allowed-by-default = true;
|
||||||
};
|
always-on = "opt-out";
|
||||||
|
auto-away = "opt-out";
|
||||||
service.DISABLE_REGISTRATION = true;
|
|
||||||
repository = {
|
|
||||||
ENABLE_PUSH_CREATE_USER = true;
|
|
||||||
ENABLE_PUSH_CREATE_ORG = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
actions = {
|
|
||||||
enabled = true;
|
enabled = true;
|
||||||
DEFAULT_ACTIONS_URL = "github";
|
};
|
||||||
|
registration = {
|
||||||
|
allow-before-connect = true;
|
||||||
|
bcrypt-cost = 4;
|
||||||
|
email-verification = { enabled = false; };
|
||||||
|
enabled = true;
|
||||||
|
throttling = {
|
||||||
|
duration = "10m";
|
||||||
|
enabled = true;
|
||||||
|
max-attempts = 30;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
channels = {
|
||||||
|
default-modes = "+ntC";
|
||||||
|
registration = { enabled = true; };
|
||||||
|
};
|
||||||
|
datastore = {
|
||||||
|
autoupgrade = true;
|
||||||
|
path = "/var/lib/ergo/ircd.db";
|
||||||
|
};
|
||||||
|
history = {
|
||||||
|
autoreplay-on-join = 0;
|
||||||
|
autoresize-window = "3d";
|
||||||
|
channel-length = 2048;
|
||||||
|
chathistory-maxmessages = 100;
|
||||||
|
client-length = 256;
|
||||||
|
enabled = true;
|
||||||
|
restrictions = {
|
||||||
|
expire-time = "1w";
|
||||||
|
grace-period = "1h";
|
||||||
|
query-cutoff = "none";
|
||||||
|
};
|
||||||
|
retention = {
|
||||||
|
allow-individual-delete = false;
|
||||||
|
enable-account-indexing = false;
|
||||||
|
};
|
||||||
|
tagmsg-storage = {
|
||||||
|
default = false;
|
||||||
|
whitelist = [ "+draft/react" "+react" ];
|
||||||
|
};
|
||||||
|
znc-maxmessages = 2048;
|
||||||
|
};
|
||||||
|
limits = {
|
||||||
|
awaylen = 390;
|
||||||
|
channellen = 64;
|
||||||
|
identlen = 20;
|
||||||
|
kicklen = 390;
|
||||||
|
nicklen = 32;
|
||||||
|
topiclen = 390;
|
||||||
|
};
|
||||||
|
network = { name = "linacastellane"; };
|
||||||
|
server = {
|
||||||
|
casemapping = "permissive";
|
||||||
|
check-ident = false;
|
||||||
|
enforce-utf = true;
|
||||||
|
enforce-utf8 = true;
|
||||||
|
forward-confirm-hostnames = false;
|
||||||
|
ip-cloaking = { enabled = false; };
|
||||||
|
ip-limits = {
|
||||||
|
count = false;
|
||||||
|
throttle = false;
|
||||||
|
};
|
||||||
|
listeners = {
|
||||||
|
":6667" = { };
|
||||||
|
"127.0.0.1:8067" = { websocket = true; };
|
||||||
|
};
|
||||||
|
lookup-hostnames = false;
|
||||||
|
max-sendq = "1M";
|
||||||
|
name = "chat.lina.cool";
|
||||||
|
relaymsg = { enabled = false; };
|
||||||
|
};
|
||||||
|
oper-classes = {
|
||||||
|
"chat-moderator" = {
|
||||||
|
title = "Chat Moderator";
|
||||||
|
capabilities = [
|
||||||
|
"kill"
|
||||||
|
"ban"
|
||||||
|
"nofakelag"
|
||||||
|
"relaymsg"
|
||||||
|
"vhosts"
|
||||||
|
"sajoin"
|
||||||
|
"samode"
|
||||||
|
"snomasks"
|
||||||
|
"roleplay"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
"server-admin" = {
|
||||||
|
title = "Server Admin";
|
||||||
|
extends = "chat-moderator";
|
||||||
|
capabilities =
|
||||||
|
[ "rehash" "accreg" "chanreg" "history" "defcon" "massmessage" ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
opers = {
|
||||||
|
admin = {
|
||||||
|
class = "server-admin";
|
||||||
|
password =
|
||||||
|
"$2a$04$uSnmJ2i4AVYR.z/kpCirsuNQGpFLUzsmIogK6qvc9mvf8UMDKjTPG";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -63,9 +160,18 @@
|
||||||
email = "shadows@with.al";
|
email = "shadows@with.al";
|
||||||
|
|
||||||
virtualHosts = {
|
virtualHosts = {
|
||||||
"git.nazrin.limited" = {
|
"live.lina.cool" = {
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
reverse_proxy localhost:3000
|
encode gzip
|
||||||
|
reverse_proxy 127.0.0.1:8001
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
"irc.lina.cool" = {
|
||||||
|
extraConfig = ''
|
||||||
|
handle /websocket {
|
||||||
|
reverse_proxy 127.0.0.1:8067
|
||||||
|
}
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
@ -9,6 +9,6 @@
|
||||||
in import nixpkgs { overlays = [ ]; }, ... }: {
|
in import nixpkgs { overlays = [ ]; }, ... }: {
|
||||||
default = pkgs.mkShell {
|
default = pkgs.mkShell {
|
||||||
NIX_CONFIG = "extra-experimental-features = nix-command flakes";
|
NIX_CONFIG = "extra-experimental-features = nix-command flakes";
|
||||||
nativeBuildInputs = with pkgs; [ home-manager git nh deploy-rs ];
|
nativeBuildInputs = with pkgs; [ home-manager git nh ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue