power saving, starr, jelly, akkoma
This commit is contained in:
parent
8f6d63909a
commit
a0d19a672e
20 changed files with 439 additions and 22 deletions
128
services/fedi.nix
Normal file
128
services/fedi.nix
Normal file
|
|
@ -0,0 +1,128 @@
|
|||
{ config, pkgs, ... }:
|
||||
let
|
||||
frontendConfig = {
|
||||
alwaysShowSubjectInput = true;
|
||||
background = "/static/bg.png";
|
||||
collapseMessageWithSubject = false;
|
||||
greentext = false;
|
||||
hideFilteredStatuses = false;
|
||||
hideMutedPosts = false;
|
||||
hidePostStats = false;
|
||||
hideSitename = false;
|
||||
hideUserStats = false;
|
||||
loginMethod = "password";
|
||||
logo = "/static/logo.png";
|
||||
logoMargin = ".1em";
|
||||
logoMask = true;
|
||||
logoLeft = false;
|
||||
nsfwCensorImage = "";
|
||||
postContentType = "text/plain";
|
||||
redirectRootLogin = "/main/friends";
|
||||
redirectRootNoLogin = "/main/all";
|
||||
showFeaturesPanel = true;
|
||||
showInstanceSpecificPanel = true;
|
||||
sidebarRight = false;
|
||||
subjectLineBehavior = "email";
|
||||
theme = "kemonomimi-theme";
|
||||
webPushNotifications = true;
|
||||
};
|
||||
in
|
||||
{
|
||||
# probably move them out? atm they stay since they only serve kemonomimi
|
||||
services.cloudflared.enable = true;
|
||||
services.cloudflared.tunnels."65c093ce-a3ac-4369-b240-2169514be106" = {
|
||||
credentialsFile = "/etc/secrets/65c093ce-a3ac-4369-b240-2169514be106.json";
|
||||
ingress = {
|
||||
"kemonomimi.pet" = "http://localhost:8679";
|
||||
"fedi.kemonomimi.pet" = "http://localhost:8678";
|
||||
"media.kemonomimi.pet" = "http://localhost:8678";
|
||||
};
|
||||
default = "http_status:404";
|
||||
};
|
||||
|
||||
services.akkoma.enable = true;
|
||||
# ill have to enable this
|
||||
# services.akkoma.config.":pleroma".":media_proxy" = {
|
||||
# enabled = true;
|
||||
# proxy_opts.redirect_on_failure = true;
|
||||
# };
|
||||
services.akkoma.config = {
|
||||
":pleroma" = {
|
||||
"Pleroma.Captcha".enabled = false;
|
||||
|
||||
":instance" = {
|
||||
name = "Kemonomimi.pet";
|
||||
description = "Akkoma instance for kemonomimi.pet";
|
||||
email = "admin@kemonomimi.pet";
|
||||
registrations_open = false;
|
||||
healthcheck = true;
|
||||
allow_relay = true;
|
||||
public = true;
|
||||
};
|
||||
|
||||
"Pleroma.Web.Endpoint" = {
|
||||
url.host = "fedi.kemonomimi.pet";
|
||||
url.port = 443;
|
||||
url.scheme = "https";
|
||||
http.ip = "127.0.0.1";
|
||||
http.port = 8678;
|
||||
};
|
||||
":configurable_from_database" = false;
|
||||
"Pleroma.Upload".base_url = "https://media.kemonomimi.pet:443/media";
|
||||
|
||||
":frontend_configurations" = {
|
||||
pleroma_fe = frontendConfig;
|
||||
};
|
||||
};
|
||||
};
|
||||
services.akkoma.frontends.admin.name = "admin-fe";
|
||||
services.akkoma.frontends.admin.ref = "stable";
|
||||
services.akkoma.frontends.admin.package = pkgs.akkoma-admin-fe;
|
||||
|
||||
services.akkoma.frontends.primary.name = "akkoma-fe";
|
||||
services.akkoma.frontends.primary.ref = "stable";
|
||||
services.akkoma.frontends.primary.package =
|
||||
pkgs.runCommand "akkoma-fe"
|
||||
{
|
||||
config = builtins.toJSON frontendConfig;
|
||||
nativeBuildInputs = with pkgs; [
|
||||
jq
|
||||
lndir
|
||||
];
|
||||
passAsFile = [ "config" ];
|
||||
}
|
||||
''
|
||||
mkdir $out
|
||||
lndir ${pkgs.akkoma-fe} $out
|
||||
|
||||
rm $out/static/config.json
|
||||
jq -s add ${pkgs.akkoma-fe}/static/config.json $configPath \
|
||||
> $out/static/config.json
|
||||
'';
|
||||
|
||||
services.akkoma.extraStatic =
|
||||
let
|
||||
mkPackage = src: pkgs.runCommand "akkoma-asset" {} ''
|
||||
cp -r ${src} $out
|
||||
'';
|
||||
in {
|
||||
"favicon.png" = mkPackage ../akkoma-static/favicon.png;
|
||||
"static" = mkPackage ../akkoma-static/static;
|
||||
"instance" = mkPackage ../akkoma-static/instance;
|
||||
};
|
||||
|
||||
systemd.services.local-static-http = {
|
||||
description = "Temporary server for under construction";
|
||||
wants = [ "network.target" ];
|
||||
after = [ "network.target" ];
|
||||
serviceConfig = {
|
||||
ExecStart = "${pkgs.python3}/bin/python3 -m http.server 8679 --bind 127.0.0.1";
|
||||
WorkingDirectory = "/var/www/kemonomimi.pet";
|
||||
Restart = "on-failure";
|
||||
User = "daniel";
|
||||
};
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue