Catpuccin theme for forgejo

This commit is contained in:
Andrea Ciceri 2024-11-29 11:20:08 +01:00
parent d7000927a3
commit 96bca1f669
Signed by: aciceri
SSH key fingerprint: SHA256:/AagBweyV4Hlfg9u092n8hbHwD5fcB6A3qhDiDA65Rg

View file

@ -1,11 +1,35 @@
{
config,
pkgs,
lib,
...
}:
let
theme = pkgs.fetchzip {
url = "https://github.com/catppuccin/gitea/releases/download/v1.0.1/catppuccin-gitea.tar.gz";
hash = "sha256-et5luA3SI7iOcEIQ3CVIu0+eiLs8C/8mOitYlWQa/uI=";
stripRoot = false;
};
in
{
systemd.services = {
forgejo = {
preStart =
let
inherit (config.services.forgejo) stateDir;
in
lib.mkAfter ''
rm -rf ${stateDir}/custom/public/assets
mkdir -p ${stateDir}/custom/public/assets
ln -sf ${theme} ${stateDir}/custom/public/assets/css
'';
};
};
services.forgejo = {
# TODO migrate to Postgres
enable = true;
package = pkgs.forgejo;
settings = {
DEFAULT = {
RUN_MODE = "prod"; # set to prod for better logs (worse performance)
@ -18,6 +42,7 @@
HTTP_PORT = 3002;
ROOT_URL = "https://git.aciceri.dev";
};
federation.ENABLED = true;
mailer = {
ENABLED = true;
PROTOCOL = "smtp+starttls";
@ -29,6 +54,20 @@
other = {
SHOW_FOOTER_VERSION = false;
};
ui = {
DEFAULT_THEME = "catppuccin-mocha-blue";
THEMES = builtins.concatStringsSep "," (
[ "auto,forgejo-auto,forgejo-dark,forgejo-light,arc-gree,gitea" ]
++ (map (name: lib.removePrefix "theme-" (lib.removeSuffix ".css" name)) (
builtins.attrNames (builtins.readDir theme)
))
);
};
"ui.meta" = {
AUTHOR = "Andrea Ciceri";
DESCRIPTION = "My personal git forge";
KEYWORDS = "git,self-hosted,forgejo,open-source,nix,nixos";
};
};
secrets.mailer.PASSWD = config.age.secrets.autistici-password.path;
dump.enable = true;