feat: Dynamic templating
This commit is contained in:
@@ -5,5 +5,31 @@
|
||||
nixosModules.default = import ./module.nix;
|
||||
configPathsNeeded =
|
||||
builtins.fromJSON (builtins.readFile ./config-paths-needed.json);
|
||||
meta = { lib, ... }: {
|
||||
spModuleVersion = 1;
|
||||
id = "pleroma";
|
||||
name = "Pleroma";
|
||||
description = "Pleroma is a microblogging service that offers a web interface and a desktop client.";
|
||||
svgIcon = builtins.readFile ./icon.svg;
|
||||
isMovable = true;
|
||||
isRequired = false;
|
||||
canBeBackedUp = true;
|
||||
backupDescription = "Your Pleroma accounts, posts and media.";
|
||||
systemdServices = [
|
||||
"pleroma.service"
|
||||
];
|
||||
folders = [
|
||||
"/var/lib/pleroma"
|
||||
];
|
||||
postgreDatabases = [
|
||||
"pleroma"
|
||||
];
|
||||
license = [
|
||||
lib.licenses.agpl3Only
|
||||
];
|
||||
homepage = "https://pleroma.social/";
|
||||
sourcePage = "https://git.pleroma.social/pleroma/pleroma";
|
||||
supportLevel = "deprecated";
|
||||
};
|
||||
};
|
||||
}
|
||||
|
10
sp-modules/pleroma/icon.svg
Normal file
10
sp-modules/pleroma/icon.svg
Normal file
@@ -0,0 +1,10 @@
|
||||
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<g clip-path="url(#clip0_51106_4998)">
|
||||
<path d="M6.35999 1.07076e-06C6.11451 -0.000261753 5.87139 0.0478616 5.64452 0.14162C5.41766 0.235378 5.21149 0.372932 5.03782 0.546418C4.86415 0.719904 4.72638 0.925919 4.63237 1.15269C4.53837 1.37945 4.48999 1.62252 4.48999 1.868V24H10.454V1.07076e-06H6.35999ZM13.473 1.07076e-06V12H17.641C18.1364 12 18.6115 11.8032 18.9619 11.4529C19.3122 11.1026 19.509 10.6274 19.509 10.132V1.07076e-06H13.473ZM13.473 18.036V24H17.641C18.1364 24 18.6115 23.8032 18.9619 23.4529C19.3122 23.1026 19.509 22.6274 19.509 22.132V18.036H13.473Z" fill="black"/>
|
||||
</g>
|
||||
<defs>
|
||||
<clipPath id="clip0_51106_4998">
|
||||
<rect width="24" height="24" fill="white"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
</svg>
|
After Width: | Height: | Size: 794 B |
@@ -6,16 +6,34 @@ let
|
||||
in
|
||||
{
|
||||
options.selfprivacy.modules.pleroma = {
|
||||
enable = lib.mkOption {
|
||||
enable = (lib.mkOption {
|
||||
default = false;
|
||||
type = lib.types.bool;
|
||||
description = "Enable";
|
||||
}) // {
|
||||
meta = {
|
||||
type = "enable";
|
||||
};
|
||||
};
|
||||
location = lib.mkOption {
|
||||
location = (lib.mkOption {
|
||||
type = lib.types.str;
|
||||
description = "Location";
|
||||
}) // {
|
||||
meta = {
|
||||
type = "location";
|
||||
};
|
||||
};
|
||||
subdomain = lib.mkOption {
|
||||
subdomain = (lib.mkOption {
|
||||
default = "social";
|
||||
type = lib.types.strMatching "[A-Za-z0-9][A-Za-z0-9\-]{0,61}[A-Za-z0-9]";
|
||||
description = "Subdomain";
|
||||
}) // {
|
||||
meta = {
|
||||
widget = "subdomain";
|
||||
type = "string";
|
||||
regex = "[A-Za-z0-9][A-Za-z0-9\-]{0,61}[A-Za-z0-9]";
|
||||
weight = 0;
|
||||
};
|
||||
};
|
||||
};
|
||||
config = lib.mkIf cfg.enable {
|
||||
|
Reference in New Issue
Block a user