[Duplicate; reason in post] Multiple issues after updating instance to latest developer version of Pleroma (details in post)
(This is a duplicate of this issue in the Support group; the only reason I'm posting it here as well is for increased visibility. I don't actually think this is a bug related to the Pleroma software.)
Environment
- Installation type (OTP or From Source): From source
- Pleroma version (could be found in the "Version" tab of settings in Pleroma-FE): 2.4.2 (it's the latest developer version, unfortunately I can no longer view the full version in my settings tab, so I don't know what version it is exactly)
-
Elixir version (
elixir -v
for from source installations, N/A for OTP): 1.12 (would updating it to 1.13 help?) - Operating system: Debian Buster
-
PostgreSQL version (
psql -V
): 11.12
Bug description
Hello all. I'm having multiple issues with my instance, which popped up after updating to the latest developer version. The reason I'm combining them all in one post is because I wouldn't be surprised if they're related. I'm fairly certain they're not actually bugs; I believe I might have a configuration error somewhere, I just don't exactly know what.
The issues I'm having are:
- If I try to change my instance name, the change no longer shows up, it just says "Pleroma FE";
- The text formatting options are gone from my frontend (to clarify, I permit all possible formatting options in my config and I did not remove any of them);
- The version number is no longer visible in Settings (it just says "Backend version" and "Frontend version"), this is annoying when I'm trying to post an issue such as now;
- AdminFE is no longer loading properly (it doesn't load users properly anymore, for instance). I just get a 500 error, I'll try to post relevant log info later;
- I can no longer change my banner image.
For clarification, I have an alt on another Pleroma instance which also uses the latest dev version and it seems to work fine, which is why I'm almost certain it's on my end.
Last 100 syslog entries (I'm not sure there's any relevant info here, but just in case)
Mar 4 23:41:32 lotte-debian-pleroma mix[22928]: 23:41:32.384 request_id=FtlR_oOqMAxQgTwACn5h [debug] Sent 200 in 31ms
Mar 4 23:41:32 lotte-debian-pleroma mix[22928]: 23:41:32.384 request_id=FtlR_oOqMAxQgTwACn5h [info] Sent 200 in 33ms
Mar 4 23:41:32 lotte-debian-pleroma mix[22928]: 23:41:32.853 [error] Elixir.Pleroma.Web.MastodonAPI.WebsocketHandler received frame: {:binary, ""}
Mar 4 23:41:33 lotte-debian-pleroma mix[22928]: 23:41:33.758 [info] GET /api/v1/timelines/home
Mar 4 23:41:33 lotte-debian-pleroma mix[22928]: 23:41:33.761 request_id=FtlR_teVWN8YghYACn5x [debug] GET /api/v1/timelines/home
Mar 4 23:41:33 lotte-debian-pleroma mix[22928]: 23:41:33.761 request_id=FtlR_teVWN8YghYACn5x [debug] Processing with Pleroma.Web.MastodonAPI.TimelineController.home/2
Mar 4 23:41:33 lotte-debian-pleroma mix[22928]: Parameters: %{"limit" => "20", "since_id" => "AH5JJwhSisXB6RXqXA", "with_muted" => "false"}
Mar 4 23:41:33 lotte-debian-pleroma mix[22928]: Pipelines: [:authenticated_api]
Mar 4 23:41:33 lotte-debian-pleroma mix[22928]: 23:41:33.764 request_id=FtlR_teVWN8YghYACn5x [debug] QUERY OK source="oauth_tokens" db=1.9ms queue=0.4ms idle=600.6ms
Mar 4 23:41:33 lotte-debian-pleroma mix[22928]: SELECT o0."id", o0."token", o0."refresh_token", o0."scopes", o0."valid_until", o0."user_id", o0."app_id", o0."inserted_at", o0."updated_at", u1."id", u1."bio", u1."raw_bio", u1."email", u1."name", u1."nickname", u1."password_hash", u1."keys", u1."public_key", u1."ap_id", u1."avatar", u1."local", u1."follower_address", u1."following_address", u1."featured_address", u1."tags", u1."last_refreshed_at", u1."last_digest_emailed_at", u1."banner", u1."background", u1."note_count", u1."follower_count", u1."following_count", u1."is_locked", u1."is_confirmed", u1."password_reset_pending", u1."is_approved", u1."registration_reason", u1."confirmation_token", u1."default_scope", u1."domain_blocks", u1."is_active", u1."no_rich_text", u1."ap_enabled", u1."is_moderator", u1."is_admin", u1."show_role", u1."uri", u1."hide_followers_count", u1."hide_follows_count", u1."hide_followers", u1."hide_follows", u1."hide_favorites", u1."email_notifications", u1."mascot", u1."emoji", u1."pleroma_settings_store", u1."fields", u1."raw_fields", u1."is_discoverable", u1."invisible", u1."allow_following_move", u1."skip_thread_containment", u1."actor_type", u1."also_known_as", u1."inbox", u1."shared_inbox", u1."accepts_chat_messages", u1."last_active_at", u1."disclose_client", u1."pinned_objects", u1."is_suggested", u1."last_status_at", u1."birthday", u1."show_birthday", u1."notification_settings", u1."blocks", u1."mutes", u1."muted_reblogs", u1."muted_notifications", u1."subscribers", u1."multi_factor_authentication_settings", u1."inserted_at", u1."updated_at" FROM "oauth_tokens" AS o0 INNER JOIN "users" AS u1 ON u1."id" = o0."user_id" WHERE (o0."token" = $1) ["dFjLH8_sIoXdbRxYpWb8AWSafGAzOLA-k83g4K_74KQ"]
Mar 4 23:41:33 lotte-debian-pleroma mix[22928]: 23:41:33.766 request_id=FtlR_teVWN8YghYACn5x [debug] QUERY OK source="following_relationships" db=1.2ms idle=601.1ms
Mar 4 23:41:33 lotte-debian-pleroma mix[22928]: SELECT u1."follower_address" FROM "following_relationships" AS f0 INNER JOIN "users" AS u1 ON f0."following_id" = u1."id" WHERE (f0."follower_id" = $1) AND (f0."state" = $2) [<<0, 0, 1, 110, 86, 195, 47, 112, 99, 14, 94, 93, 134, 107, 0, 0>>, 2]
Mar 4 23:41:33 lotte-debian-pleroma mix[22928]: 23:41:33.767 request_id=FtlR_teVWN8YghYACn5x [debug] QUERY OK source="lists" db=0.3ms queue=0.2ms idle=599.5ms
Mar 4 23:41:33 lotte-debian-pleroma mix[22928]: SELECT l0."ap_id" FROM "lists" AS l0 WHERE ($1 = ANY(l0."following")) ["https://veenus.art/users/lottev/followers"]
Mar 4 23:41:33 lotte-debian-pleroma mix[22928]: 23:41:33.773 request_id=FtlR_teVWN8YghYACn5x [debug] QUERY OK source="user_relationships" db=5.7ms queue=0.3ms idle=598.4ms
Mar 4 23:41:33 lotte-debian-pleroma mix[22928]: SELECT u0."relationship_type", array_agg(u1."ap_id") FROM "user_relationships" AS u0 INNER JOIN "users" AS u1 ON u1."id" = u0."target_id" WHERE (u0."source_id" = $1) AND (u0."relationship_type" = ANY($2)) GROUP BY u0."relationship_type" [<<0, 0, 1, 110, 86, 195, 47, 112, 99, 14, 94, 93, 134, 107, 0, 0>>, [1, 2, 3]]
Mar 4 23:41:33 lotte-debian-pleroma mix[22928]: 23:41:33.775 request_id=FtlR_teVWN8YghYACn5x [debug] QUERY OK source="users" db=1.3ms queue=0.3ms idle=603.2ms
Mar 4 23:41:33 lotte-debian-pleroma mix[22928]: SELECT u0."ap_id" FROM "users" AS u0 INNER JOIN "following_relationships" AS f1 ON (f1."following_id" = u0."id") AND (f1."follower_id" = $1) WHERE (u0."is_active" = TRUE) AND (u0."id" != $2) AND (f1."state" = $3) AND (NOT (u0."nickname" IS NULL)) AND (NOT (u0."nickname" LIKE 'internal.%')) [<<0, 0, 1, 110, 86, 195, 47, 112, 99, 14, 94, 93, 134, 107, 0, 0>>, <<0, 0, 1, 110, 86, 195, 47, 112, 99, 14, 94, 93, 134, 107, 0, 0>>, 2]
Mar 4 23:41:33 lotte-debian-pleroma mix[22928]: 23:41:33.776 request_id=FtlR_teVWN8YghYACn5x [debug] QUERY OK source="filters" db=0.4ms queue=0.3ms idle=601.2ms
Mar 4 23:41:33 lotte-debian-pleroma mix[22928]: SELECT f0."id", f0."user_id", f0."filter_id", f0."hide", f0."whole_word", f0."phrase", f0."context", f0."expires_at", f0."inserted_at", f0."updated_at" FROM "filters" AS f0 WHERE ((f0."expires_at" IS NULL) OR (f0."expires_at" > $1)) AND (f0."hide") AND (f0."user_id" = $2) ORDER BY f0."id" DESC [~N[2022-03-04 23:41:33], <<0, 0, 1, 110, 86, 195, 47, 112, 99, 14, 94, 93, 134, 107, 0, 0>>]
Mar 4 23:41:33 lotte-debian-pleroma mix[22928]: 23:41:33.777 request_id=FtlR_teVWN8YghYACn5x [debug] QUERY OK source="filters" db=0.4ms idle=600.1ms
Mar 4 23:41:33 lotte-debian-pleroma mix[22928]: SELECT f0."id", f0."user_id", f0."filter_id", f0."hide", f0."whole_word", f0."phrase", f0."context", f0."expires_at", f0."inserted_at", f0."updated_at" FROM "filters" AS f0 WHERE ((f0."expires_at" IS NULL) OR (f0."expires_at" > $1)) AND (f0."hide") AND (f0."user_id" = $2) ORDER BY f0."id" DESC [~N[2022-03-04 23:41:33], <<0, 0, 1, 110, 86, 195, 47, 112, 99, 14, 94, 93, 134, 107, 0, 0>>]
Mar 4 23:41:33 lotte-debian-pleroma mix[22928]: 23:41:33.781 request_id=FtlR_teVWN8YghYACn5x [debug] QUERY OK source="users" db=3.6ms queue=0.3ms idle=598.8ms
Mar 4 23:41:33 lotte-debian-pleroma mix[22928]: SELECT u0."ap_id" FROM "users" AS u0 WHERE (NOT (u0."nickname" IS NULL)) AND (NOT (u0."nickname" LIKE 'internal.%')) AND (u0."invisible" = $1) [true]
Mar 4 23:41:33 lotte-debian-pleroma mix[22928]: 23:41:33.824 request_id=FtlR_teVWN8YghYACn5x [debug] QUERY OK source="activities" db=36.7ms idle=602.0ms
Mar 4 23:41:33 lotte-debian-pleroma mix[22928]: SELECT a0."id", a0."data", a0."local", a0."actor", a0."recipients", a0."inserted_at", a0."updated_at", b2."id", b2."user_id", b2."activity_id", b2."inserted_at", b2."updated_at", o1."id", o1."data", o1."inserted_at", o1."updated_at", NOT (t3."id" IS NULL) FROM "activities" AS a0 INNER JOIN "objects" AS o1 ON (o1."data"->>'id') = COALESCE(a0."data"->'object'->>'id', a0."data"->>'object') LEFT OUTER JOIN "bookmarks" AS b2 ON (b2."user_id" = $1) AND (b2."activity_id" = a0."id") LEFT OUTER JOIN "thread_mutes" AS t3 ON (t3."user_id" = $2) AND (t3."context" = a0."data"->>'context') WHERE ((($3 && a0."recipients")) OR (a0."actor" = $4)) AND (a0."id" > $5) AND (a0."data"->>'type' = ANY($6)) AND (not (a0."actor" = ANY($7))) AND (((not (a0."recipients" && $8)) or a0."actor" = $9)) AND ((recipients_contain_blocked_domains(a0."recipients", $10) = false) or a0."actor" = $11) AND (not (a0."data"->>'type' = 'Announce' and a0."data"->'to' ?| $12)) AND ((not (split_part(a0."actor", '/', 3) = ANY($13))) or a0."actor" = ANY($14)) AND ((not (split_part(o1."data"->>'actor', '/', 3) = ANY($15))) or (o1."data"->>'actor') = ANY($16)) AND (not (a0."actor" = ANY($17))) AND (not (a0."data"->'to' ?| $18) or a0."actor" = $19) AND (t3."user_id" IS NULL) AND (not ( a0."data"->>'type' = 'Announce' and a0."actor" = ANY($20))) AND (a0."data"->>'type' != 'Announce' or o1."data"->>'actor' != $21) AND (NOT (a0."actor" IN (SELECT su0."ap_id" FROM "users" AS su0 WHERE (su0."is_active" = FALSE) AND (NOT (su0."nickname" IS NULL)) AND (NOT (su0."nickname" LIKE 'internal.%'))))) AND (not(o1."data"->>'type' = 'Answer')) AND (not(o1."data"->>'type' = 'ChatMessage')) AND (NOT (a0."actor" = ANY($22))) AND (a0."id" > $23) ORDER BY a0."id" desc nulls last LIMIT $24 [<<0, 0, 1, 110, 86, 195, 47, 112, 99, 14, 94, 93, 134, 107, 0, 0>>, <<0, 0, 1, 110, 86, 195, 47, 112, 99, 14, 94, 93, 134, 107, 0, 0>>, ["https://veenus.art/users/lottev", "https://veenus.art/users/lottev/followers", "https://shitposter.club/users/BadFediPosts/followers", "https://socially.whimsic.al/users/kaniini/followers", "https://skippers-bin.com/users/7wgts3f671/followers", "https://mastodon.social/users/mastodongenuineadvantage/followers", "https://kawen.space/users/kaniini/followers", "https://mastodon.cloud/users/cametek/followers", "https://vocalodon.net/users/MystSaphyr/followers", "https://miniwa.moe/users/ivesen/followers", "https://weeaboo.space/users/LotteV/followers", "https://pawoo.net/users/bluerancel/followers", "https://pawoo.net/users/OctGhost/followers", "https://mastodon.art/users/HikaTamika/followers", "https://kawen.space/users/lain/followers", "https://weeaboo.space/users/quad/followers", "https://kawen.space/users/LotteV/followers", "https://pleroma.soykaf.com/users/lain/followers", "https://freespeechextremist.com/users/p/followers", "https://blob.cat/users/mewmew/followers", "https://pleroma.wolfie.pw/users/wolfie/followers", "https://mastodon.social/users/CeoOfMastodon/followers", "https://blobturtle.club/users/Google/followers", "https://blog.blob.cat/@/mewmew/followers", "https://shitposter.club/users/dielan/followers", "https://pleroma.wolfie.pw/users/4chan/followers", "https://toast.cafe/users/toast/followers", "https://skippers-bin.com/users/7v1w1r8ce6/followers", "https://neckbeard.xyz/users/sjw/followers", "https://fedi.vulpes.one/users/Feuerfuchs/followers", "https://princess.cat/users/mewmew/followers", "https://busshi.moe/users/lottev/followers", "https://busshi.moe/users/mewmew/followers", "https://veenus.art/users/bullshit/followers", "https://skippers-bin.com/users/815aupxovw/followers", "https://mastodon.social/users/hikatamika/followers", "https://fediverse.network/users/veenusart/followers", "https://shitposter.club/users/fediquotes/followers", "https://poa.st/users/Catlin/followers", "https://huskyapp.dev/users/husky/followers", "https://bae.st/users/lottev/followers", "https://outerheaven.club/users/zonk/followers", "https://toast.cafe/users/mechera/followers", "https://netzsphaere.xyz/users/georgia/followers", "https://fedi.absturztau.be/users/plthemes/followers", "https://fedi.absturztau.be/users/absturztaube/followers", "https://pl.neko.bar/users/nekojanai/followers", ...], "https://veenus.art/users/lottev", <<0, 0, 1, 127, 87, 76, 157, 39, 97, 184, 227, 117, 81, 114, 0, 0>>, ["Create", "Announce"], ["https://gab.com/users/BostonDave", "https://masto.vy-let.software/users/vy", "https://myasstodon.xyz/users/ItsMorgan", "https://pl.seedy.xyz/users/cdmnky", "https://gab.com/users/ArchangeI", "https://gab.com/users/Dafuck1488", "https://gab.com/users/En_Kindle1", "https://gab.com/users/Darrenspace", "https://gab.com/users/nswoodchuckss", "https://radical.town/users/FuchsiaShock", "https://pleroma.mouse.services/users/Steven", "https://mastodon.bida.im/users/bluberrycookie", "https://carrot.army/users/JoJo", "https://lgbt.io/users/V", "https://radical.town/users/turtlebirb", "https://sanguine.space/users/FirstProgenitor", "https://meow.social/users/BalooUriza", "https://tabletop.social/users/host", "https://mastodon.social/users/Shufei", "https://witches.live/users/anna", "https://social.computerfox.xyz/users/compufox", "https://mastodon.technology/users/octet33", "https://marf.space/users/trysdyn", "https://mastodon.social/users/malar", "https://gab.com/users/JohnRivers", "https://spinster.xyz/users/uteri_my_duderi", "https://freespeechextremist.com/users/poiuytrewq", "https://mastodon.technology/users/ashfurrow", "https://freespeechextremist.com/users/bahn", "https://freespeechextremist.com/users/Squiddy", "https://gab.com/users/Unbanjojo", "https://freespeechextremist.com/users/LoneDissenter", "https://pieville.net/users/SS", "https://monads.online/users/dankwraith", "https://spinster.xyz/users/socjuswiz", "https://likeable.space/users/gabwatch", "https://queer.party/users/it_wasnt_arson", "https://fedi.absturztau.be/users/einzbern", "https://masto.einzbern.one/users/erin", "https://radical.town/users/anomaly", "https://be.cutewith.me/users/a", "https://cliterati.club/users/Squiddy", "https://lesbian.solutions/users/wenom", ...], ["https://gab.com/users/BostonDave", "https://masto.vy-let.software/users/vy", "https://myasstodon.xyz/users/ItsMorgan", "https://pl.seedy.xyz/users/cdmnky", "https://gab.com/users/ArchangeI", "https://gab.com/users/Dafuck1488", "https://gab.com/users/En_Kindle1", "https://gab.com/users/Darrenspace", "https://gab.com/users/nswoodchuckss", "https://radical.town/users/FuchsiaShock", "https://pleroma.mouse.services/users/Steven", "https://mastodon.bida.im/users/bluberrycookie", "https://carrot.army/users/JoJo", "https://lgbt.io/users/V", "https://radical.town/users/turtlebirb", "https://sanguine.space/users/FirstProgenitor", "https://meow.social/users/BalooUriza", "https://tabletop.social/users/host", "https://mastodon.social/users/Shufei", "https://witches.live/users/anna", "https://social.computerfox.xyz/users/compufox", "https://mastodon.technology/users/octet33", "https://marf.space/users/trysdyn", "https://mastodon.social/users/malar", "https://gab.com/users/JohnRivers", "https://spinster.xyz/users/uteri_my_duderi", "https://freespeechextremist.com/users/poiuytrewq", "https://mastodon.technology/users/ashfurrow", "https://freespeechextremist.com/users/bahn", "https://freespeechextremist.com/users/Squiddy", "https://gab.com/users/Unbanjojo", "https://freespeechextremist.com/users/LoneDissenter", "https://pieville.net/users/SS", "https://monads.online/users/dankwraith", "https://spinster.xyz/users/socjuswiz", "https://likeable.space/users/gabwatch", "https://queer.party/users/it_wasnt_arson", "https://fedi.absturztau.be/users/einzbern", "https://masto.einzbern.one/users/erin", "https://radical.town/users/anomaly", "https://be.cutewith.me/users/a", "https://cliterati.club/users/Squiddy", ...], "https://veenus.art/users/lottev", ["youjo.love", "mastodon.bida.im", "soc.punktrash.club", "social.xenofem.me", "democracy.town", "nnia.space", "www.librepunk.club", "fedi.queerdorks.club", "todon.eu", "octodon.soc (truncated)
Mar 4 23:41:33 lotte-debian-pleroma mix[22928]: 23:41:33.827 request_id=FtlR_teVWN8YghYACn5x [debug] QUERY OK source="activities" db=1.2ms queue=0.1ms idle=642.9ms
Mar 4 23:41:33 lotte-debian-pleroma mix[22928]: SELECT a0."id", a0."data", a0."local", a0."actor", a0."recipients", a0."inserted_at", a0."updated_at", o1."id", o1."data", o1."inserted_at", o1."updated_at" FROM "activities" AS a0 INNER JOIN "objects" AS o1 ON (o1."data"->>'id') = COALESCE(a0."data"->'object'->>'id', a0."data"->>'object') WHERE (coalesce((a0."data")->'object'->>'id', (a0."data")->>'object') = ANY($1)) AND ((a0."data")->>'type' = $2) [["https://barrett.fish/objects/19bf5d8d-7956-453e-bb58-950bd71cd824"], "Create"]
Mar 4 23:41:33 lotte-debian-pleroma mix[22928]: 23:41:33.829 request_id=FtlR_teVWN8YghYACn5x [debug] QUERY OK source="activities" db=1.3ms queue=0.4ms idle=63.1ms
Mar 4 23:41:33 lotte-debian-pleroma mix[22928]: SELECT a0."id", a0."data", a0."local", a0."actor", a0."recipients", a0."inserted_at", a0."updated_at", b2."id", b2."user_id", b2."activity_id", b2."inserted_at", b2."updated_at", o1."id", o1."data", o1."inserted_at", o1."updated_at", NOT (t3."id" IS NULL) FROM "activities" AS a0 LEFT OUTER JOIN "objects" AS o1 ON (o1."data"->>'id') = COALESCE(a0."data"->'object'->>'id', a0."data"->>'object') LEFT OUTER JOIN "bookmarks" AS b2 ON (b2."user_id" = $1) AND (b2."activity_id" = a0."id") LEFT OUTER JOIN "thread_mutes" AS t3 ON (t3."user_id" = $2) AND (t3."context" = a0."data"->>'context') WHERE (coalesce((a0."data")->'object'->>'id', (a0."data")->>'object') = ANY($3)) AND ((a0."data")->>'type' = $4) [<<0, 0, 1, 110, 86, 195, 47, 112, 99, 14, 94, 93, 134, 107, 0, 0>>, <<0, 0, 1, 110, 86, 195, 47, 112, 99, 14, 94, 93, 134, 107, 0, 0>>, [], "Create"]
Mar 4 23:41:33 lotte-debian-pleroma mix[22928]: 23:41:33.830 request_id=FtlR_teVWN8YghYACn5x [debug] QUERY OK source="user_relationships" db=0.4ms queue=0.3ms idle=62.9ms
Mar 4 23:41:33 lotte-debian-pleroma mix[22928]: SELECT u0."relationship_type", u0."source_id", u0."target_id" FROM "user_relationships" AS u0 WHERE ((source_id = ANY($1) AND target_id = ANY($2) AND relationship_type = ANY($3)) OR (source_id = ANY($4) AND target_id = ANY($5) AND relationship_type = ANY($6))) [[<<0, 0, 1, 110, 86, 195, 47, 112, 99, 14, 94, 93, 134, 107, 0, 0>>], [<<0, 0, 1, 111, 144, 31, 194, 207, 192, 33, 195, 47, 200, 24, 0, 0>>, <<0, 0, 1, 123, 6, 46, 235, 83, 38, 230, 19, 96, 246, 192, 0, 0>>], [2], [<<0, 0, 1, 111, 144, 31, 194, 207, 192, 33, 195, 47, 200, 24, 0, 0>>, <<0, 0, 1, 123, 6, 46, 235, 83, 38, 230, 19, 96, 246, 192, 0, 0>>], [<<0, 0, 1, 110, 86, 195, 47, 112, 99, 14, 94, 93, 134, 107, 0, 0>>], []]
Mar 4 23:41:33 lotte-debian-pleroma mix[22928]: 23:41:33.832 request_id=FtlR_teVWN8YghYACn5x [debug] QUERY OK source="instances" db=0.4ms idle=64.9ms
Mar 4 23:41:33 lotte-debian-pleroma mix[22928]: SELECT i0."id", i0."host", i0."unreachable_since", i0."favicon", i0."favicon_updated_at", i0."inserted_at", i0."updated_at" FROM "instances" AS i0 WHERE (i0."host" = $1) ["lain.com"]
Mar 4 23:41:33 lotte-debian-pleroma mix[22928]: 23:41:33.834 request_id=FtlR_teVWN8YghYACn5x [debug] QUERY OK source="following_relationships" db=1.1ms idle=59.7ms
Mar 4 23:41:33 lotte-debian-pleroma mix[22928]: SELECT u1."follower_address" FROM "following_relationships" AS f0 INNER JOIN "users" AS u1 ON f0."following_id" = u1."id" WHERE (f0."follower_id" = $1) AND (f0."state" = $2) [<<0, 0, 1, 110, 86, 195, 47, 112, 99, 14, 94, 93, 134, 107, 0, 0>>, 2]
Mar 4 23:41:33 lotte-debian-pleroma mix[22928]: 23:41:33.838 request_id=FtlR_teVWN8YghYACn5x [debug] QUERY OK source="instances" db=0.3ms idle=62.0ms
Mar 4 23:41:33 lotte-debian-pleroma mix[22928]: SELECT i0."id", i0."host", i0."unreachable_since", i0."favicon", i0."favicon_updated_at", i0."inserted_at", i0."updated_at" FROM "instances" AS i0 WHERE (i0."host" = $1) ["mk.absturztau.be"]
Mar 4 23:41:33 lotte-debian-pleroma mix[22928]: 23:41:33.839 request_id=FtlR_teVWN8YghYACn5x [debug] Sent 200 in 78ms
Mar 4 23:41:33 lotte-debian-pleroma mix[22928]: 23:41:33.839 request_id=FtlR_teVWN8YghYACn5x [info] Sent 200 in 81ms
Mar 4 23:41:34 lotte-debian-pleroma kernel: [24279515.921308] [UFW BLOCK] IN=eth0 OUT= MAC=8e:79:7e:45:f2:3e:fe:00:00:00:01:01:08:00 SRC=79.124.62.86 DST=165.22.38.220 LEN=40 TOS=0x00 PREC=0x00 TTL=244 ID=16911 PROTO=TCP SPT=47144 DPT=49075 WINDOW=1024 RES=0x00 SYN URGP=0
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: 23:41:35.364 [info] GET /api/v1/pleroma/chats
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: 23:41:35.368 request_id=FtlR_zdhOVFc14kACn6B [debug] GET /api/v1/pleroma/chats
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: 23:41:35.368 request_id=FtlR_zdhOVFc14kACn6B [debug] Processing with Pleroma.Web.PleromaAPI.ChatController.index/2
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: Parameters: %{}
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: Pipelines: [:authenticated_api]
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: 23:41:35.372 request_id=FtlR_zdhOVFc14kACn6B [debug] QUERY OK source="oauth_tokens" db=3.1ms queue=0.3ms idle=203.1ms
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: SELECT o0."id", o0."token", o0."refresh_token", o0."scopes", o0."valid_until", o0."user_id", o0."app_id", o0."inserted_at", o0."updated_at", u1."id", u1."bio", u1."raw_bio", u1."email", u1."name", u1."nickname", u1."password_hash", u1."keys", u1."public_key", u1."ap_id", u1."avatar", u1."local", u1."follower_address", u1."following_address", u1."featured_address", u1."tags", u1."last_refreshed_at", u1."last_digest_emailed_at", u1."banner", u1."background", u1."note_count", u1."follower_count", u1."following_count", u1."is_locked", u1."is_confirmed", u1."password_reset_pending", u1."is_approved", u1."registration_reason", u1."confirmation_token", u1."default_scope", u1."domain_blocks", u1."is_active", u1."no_rich_text", u1."ap_enabled", u1."is_moderator", u1."is_admin", u1."show_role", u1."uri", u1."hide_followers_count", u1."hide_follows_count", u1."hide_followers", u1."hide_follows", u1."hide_favorites", u1."email_notifications", u1."mascot", u1."emoji", u1."pleroma_settings_store", u1."fields", u1."raw_fields", u1."is_discoverable", u1."invisible", u1."allow_following_move", u1."skip_thread_containment", u1."actor_type", u1."also_known_as", u1."inbox", u1."shared_inbox", u1."accepts_chat_messages", u1."last_active_at", u1."disclose_client", u1."pinned_objects", u1."is_suggested", u1."last_status_at", u1."birthday", u1."show_birthday", u1."notification_settings", u1."blocks", u1."mutes", u1."muted_reblogs", u1."muted_notifications", u1."subscribers", u1."multi_factor_authentication_settings", u1."inserted_at", u1."updated_at" FROM "oauth_tokens" AS o0 INNER JOIN "users" AS u1 ON u1."id" = o0."user_id" WHERE (o0."token" = $1) ["dFjLH8_sIoXdbRxYpWb8AWSafGAzOLA-k83g4K_74KQ"]
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: 23:41:35.379 request_id=FtlR_zdhOVFc14kACn6B [debug] QUERY OK source="chats" db=3.0ms idle=207.4ms
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: SELECT c0."id", c0."user_id", c0."recipient", c0."inserted_at", c0."updated_at" FROM "chats" AS c0 WHERE (c0."user_id" = $1) AND (NOT (c0."recipient" = ANY($2))) ORDER BY c0."updated_at" DESC [<<0, 0, 1, 110, 86, 195, 47, 112, 99, 14, 94, 93, 134, 107, 0, 0>>, ["https://7td.org/users/trumpFan4", "https://activism.openworlds.info/users/witchescauldron", "https://albin.social/users/alexbeck", "https://americassweethe.art/users/medic", "https://anarchism.space/users/acrata", "https://anarchism.space/users/dtluna", "https://anarchism.space/users/TheNerdyAnarchist", "https://anime.website/users/Atoli", "https://anime.website/users/Charfuhrer", "https://anime.website/users/Daniel", "https://anime.website/users/Eidolon0", "https://anime.website/users/Lox", "https://anime.website/users/WorldMAP", "https://anime.website/users/Zorgon", "https://anticapitalist.party/users/Angle", "https://anticapitalist.party/users/bigMouthCommie", "https://anticapitalist.party/users/cosine", "https://anticapitalist.party/users/kropot", "https://anticapitalist.party/users/lajbgc", "https://anticapitalist.party/users/oletedstilts", "https://anticapitalist.party/users/stevietrix", "https://artalley.social/users/manorstories", "https://assorted.paupers.xyz/users/kameleonidas", "https://aus.social/users/XO", "https://bae.st/users/LoveLiveBot", "https://banana.dog/users/clown", "https://banana.dog/users/debugninja", "https://baraag.net/users/aisuman", "https://baraag.net/users/Bzehburger", "https://baraag.net/users/DrippingPieArt", "https://baraag.net/users/Giri", "https://baraag.net/users/Nidesu", "https://baraag.net/users/Octoppoi", "https://baraag.net/users/sheepshorts", "https://baraag.net/users/sylveon", "https://baraag.net/users/Tenshi_Okihana", "https://baraag.net/users/ThousandArms", "https://baraag.net/users/Vermelhatan", "https://be.cutewith.me/users/a", "https://beeping.town/users/leftbot", "https://bigshoulders.city/users/moderation", "https://bitcoinhackers.org/users/coiny", "https://blob.cat/users/JOjohere", "https://blob.cat/users/kaikatsu", "https://blob.cat/users/kick", "https://blob.cat/users/logantheacnomap", "https://blob.cat/users/miro2", "https://blob.cat/users/NeikoCat", ...]]
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: 23:41:35.380 request_id=FtlR_zdhOVFc14kACn6B [debug] QUERY OK source="chat_message_references" db=0.6ms idle=210.0ms
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: SELECT c0."id", c0."object_id", c0."chat_id", c0."unread", c0."inserted_at", c0."updated_at" FROM "chat_message_references" AS c0 WHERE (c0."chat_id" = $1) ORDER BY c0."id" DESC LIMIT 1 [<<0, 0, 1, 121, 80, 226, 84, 74, 253, 255, 51, 235, 27, 152, 0, 0>>]
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: 23:41:35.381 request_id=FtlR_zdhOVFc14kACn6B [debug] QUERY OK source="objects" db=0.5ms idle=208.6ms
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: SELECT o0."id", o0."data", o0."inserted_at", o0."updated_at", o0."id" FROM "objects" AS o0 WHERE (o0."id" = $1) [7136920]
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: 23:41:35.384 request_id=FtlR_zdhOVFc14kACn6B [debug] QUERY OK source="instances" db=0.4ms idle=208.9ms
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: SELECT i0."id", i0."host", i0."unreachable_since", i0."favicon", i0."favicon_updated_at", i0."inserted_at", i0."updated_at" FROM "instances" AS i0 WHERE (i0."host" = $1) ["poa.st"]
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: 23:41:35.385 request_id=FtlR_zdhOVFc14kACn6B [debug] QUERY OK source="chat_message_references" db=0.4ms idle=207.5ms
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: SELECT count(*) FROM "chat_message_references" AS c0 WHERE (c0."chat_id" = $1) AND (c0."unread" = TRUE) [<<0, 0, 1, 121, 80, 226, 84, 74, 253, 255, 51, 235, 27, 152, 0, 0>>]
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: 23:41:35.386 request_id=FtlR_zdhOVFc14kACn6B [debug] QUERY OK source="chat_message_references" db=0.5ms idle=206.6ms
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: SELECT c0."id", c0."object_id", c0."chat_id", c0."unread", c0."inserted_at", c0."updated_at" FROM "chat_message_references" AS c0 WHERE (c0."chat_id" = $1) ORDER BY c0."id" DESC LIMIT 1 [<<0, 0, 1, 124, 248, 147, 228, 250, 38, 230, 19, 96, 246, 192, 0, 0>>]
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: 23:41:35.387 request_id=FtlR_zdhOVFc14kACn6B [debug] QUERY OK source="objects" db=0.5ms idle=205.0ms
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: SELECT o0."id", o0."data", o0."inserted_at", o0."updated_at", o0."id" FROM "objects" AS o0 WHERE (o0."id" = $1) [6562879]
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: 23:41:35.389 request_id=FtlR_zdhOVFc14kACn6B [debug] QUERY OK source="instances" db=0.5ms idle=204.5ms
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: SELECT i0."id", i0."host", i0."unreachable_since", i0."favicon", i0."favicon_updated_at", i0."inserted_at", i0."updated_at" FROM "instances" AS i0 WHERE (i0."host" = $1) ["veenus.art"]
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: 23:41:35.390 request_id=FtlR_zdhOVFc14kACn6B [debug] QUERY OK source="chat_message_references" db=0.4ms idle=203.7ms
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: SELECT count(*) FROM "chat_message_references" AS c0 WHERE (c0."chat_id" = $1) AND (c0."unread" = TRUE) [<<0, 0, 1, 124, 248, 147, 228, 250, 38, 230, 19, 96, 246, 192, 0, 0>>]
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: 23:41:35.391 request_id=FtlR_zdhOVFc14kACn6B [debug] QUERY OK source="chat_message_references" db=0.5ms idle=18.7ms
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: SELECT c0."id", c0."object_id", c0."chat_id", c0."unread", c0."inserted_at", c0."updated_at" FROM "chat_message_references" AS c0 WHERE (c0."chat_id" = $1) ORDER BY c0."id" DESC LIMIT 1 [<<0, 0, 1, 120, 93, 31, 20, 228, 255, 102, 103, 16, 96, 149, 0, 0>>]
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: 23:41:35.392 request_id=FtlR_zdhOVFc14kACn6B [debug] QUERY OK source="objects" db=0.5ms idle=13.7ms
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: SELECT o0."id", o0."data", o0."inserted_at", o0."updated_at", o0."id" FROM "objects" AS o0 WHERE (o0."id" = $1) [4606426]
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: 23:41:35.394 request_id=FtlR_zdhOVFc14kACn6B [debug] QUERY OK source="instances" db=0.5ms idle=13.2ms
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: SELECT i0."id", i0."host", i0."unreachable_since", i0."favicon", i0."favicon_updated_at", i0."inserted_at", i0."updated_at" FROM "instances" AS i0 WHERE (i0."host" = $1) ["veenus.art"]
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: 23:41:35.396 request_id=FtlR_zdhOVFc14kACn6B [debug] QUERY OK source="chat_message_references" db=0.4ms idle=13.8ms
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: SELECT count(*) FROM "chat_message_references" AS c0 WHERE (c0."chat_id" = $1) AND (c0."unread" = TRUE) [<<0, 0, 1, 120, 93, 31, 20, 228, 255, 102, 103, 16, 96, 149, 0, 0>>]
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: 23:41:35.397 request_id=FtlR_zdhOVFc14kACn6B [debug] QUERY OK source="chat_message_references" db=0.5ms idle=12.6ms
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: SELECT c0."id", c0."object_id", c0."chat_id", c0."unread", c0."inserted_at", c0."updated_at" FROM "chat_message_references" AS c0 WHERE (c0."chat_id" = $1) ORDER BY c0."id" DESC LIMIT 1 [<<0, 0, 1, 120, 78, 150, 0, 25, 56, 46, 255, 105, 194, 186, 0, 0>>]
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: 23:41:35.398 request_id=FtlR_zdhOVFc14kACn6B [debug] QUERY OK source="objects" db=0.6ms idle=12.1ms
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: SELECT o0."id", o0."data", o0."inserted_at", o0."updated_at", o0."id" FROM "objects" AS o0 WHERE (o0."id" = $1) [4583656]
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: 23:41:35.399 request_id=FtlR_zdhOVFc14kACn6B [debug] QUERY OK source="instances" db=0.6ms idle=12.4ms
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: SELECT i0."id", i0."host", i0."unreachable_since", i0."favicon", i0."favicon_updated_at", i0."inserted_at", i0."updated_at" FROM "instances" AS i0 WHERE (i0."host" = $1) ["veenus.art"]
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: 23:41:35.401 request_id=FtlR_zdhOVFc14kACn6B [debug] QUERY OK source="chat_message_references" db=0.4ms idle=13.0ms
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: SELECT count(*) FROM "chat_message_references" AS c0 WHERE (c0."chat_id" = $1) AND (c0."unread" = TRUE) [<<0, 0, 1, 120, 78, 150, 0, 25, 56, 46, 255, 105, 194, 186, 0, 0>>]
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: 23:41:35.402 request_id=FtlR_zdhOVFc14kACn6B [debug] QUERY OK source="chat_message_references" db=0.4ms idle=12.7ms
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: SELECT c0."id", c0."object_id", c0."chat_id", c0."unread", c0."inserted_at", c0."updated_at" FROM "chat_message_references" AS c0 WHERE (c0."chat_id" = $1) ORDER BY c0."id" DESC LIMIT 1 [<<0, 0, 1, 117, 63, 200, 87, 7, 198, 200, 86, 29, 207, 58, 0, 0>>]
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: 23:41:35.403 request_id=FtlR_zdhOVFc14kACn6B [debug] QUERY OK source="objects" db=0.5ms idle=12.2ms
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: SELECT o0."id", o0."data", o0."inserted_at", o0."updated_at", o0."id" FROM "objects" AS o0 WHERE (o0."id" = $1) [3214540]
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: 23:41:35.405 request_id=FtlR_zdhOVFc14kACn6B [debug] QUERY OK source="instances" db=0.5ms idle=12.8ms
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: SELECT i0."id", i0."host", i0."unreachable_since", i0."favicon", i0."favicon_updated_at", i0."inserted_at", i0."updated_at" FROM "instances" AS i0 WHERE (i0."host" = $1) ["veenus.art"]
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: 23:41:35.406 request_id=FtlR_zdhOVFc14kACn6B [debug] QUERY OK source="chat_message_references" db=0.4ms idle=13.3ms
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: SELECT count(*) FROM "chat_message_references" AS c0 WHERE (c0."chat_id" = $1) AND (c0."unread" = TRUE) [<<0, 0, 1, 117, 63, 200, 87, 7, 198, 200, 86, 29, 207, 58, 0, 0>>]
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: 23:41:35.408 request_id=FtlR_zdhOVFc14kACn6B [debug] QUERY OK source="chat_message_references" db=0.6ms idle=12.6ms
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: SELECT c0."id", c0."object_id", c0."chat_id", c0."unread", c0."inserted_at", c0."updated_at" FROM "chat_message_references" AS c0 WHERE (c0."chat_id" = $1) ORDER BY c0."id" DESC LIMIT 1 [<<0, 0, 1, 115, 79, 98, 41, 107, 241, 103, 216, 198, 254, 42, 0, 0>>]
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: 23:41:35.408 request_id=FtlR_zdhOVFc14kACn6B [debug] QUERY OK source="objects" db=0.3ms idle=12.1ms
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: SELECT o0."id", o0."data", o0."inserted_at", o0."updated_at", o0."id" FROM "objects" AS o0 WHERE (o0."id" = $1) [2938849]
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: 23:41:35.410 request_id=FtlR_zdhOVFc14kACn6B [debug] QUERY OK source="instances" db=0.3ms idle=12.7ms
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: SELECT i0."id", i0."host", i0."unreachable_since", i0."favicon", i0."favicon_updated_at", i0."inserted_at", i0."updated_at" FROM "instances" AS i0 WHERE (i0."host" = $1) ["blob.cat"]
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: 23:41:35.411 request_id=FtlR_zdhOVFc14kACn6B [debug] QUERY OK source="chat_message_references" db=0.3ms idle=12.9ms
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: SELECT count(*) FROM "chat_message_references" AS c0 WHERE (c0."chat_id" = $1) AND (c0."unread" = TRUE) [<<0, 0, 1, 115, 79, 98, 41, 107, 241, 103, 216, 198, 254, 42, 0, 0>>]
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: 23:41:35.412 request_id=FtlR_zdhOVFc14kACn6B [debug] Sent 200 in 44ms
Mar 4 23:41:35 lotte-debian-pleroma mix[22928]: 23:41:35.412 request_id=FtlR_zdhOVFc14kACn6B [info] Sent 200 in 48ms
Prod config (sensitive info redacted)
# Pleroma instance configuration
# NOTE: This file should not be committed to a repo or otherwise made public
# without removing sensitive information.
import Config
# General application configuration
config :pleroma, ecto_repos: [Pleroma.Repo]
config :pleroma, Pleroma.Repo,
telemetry_event: [Pleroma.Repo.Instrumenter],
migration_lock: nil,
adapter: Ecto.Adapters.Postgres,
username: <REDACTED>,
password: <REDACTED>,
database: <REDACTED>,
hostname: "localhost",
pool_size: 10
config :pleroma, Pleroma.Captcha,
enabled: true,
seconds_valid: 300,
method: Pleroma.Captcha.Kocaptcha
config :pleroma, Pleroma.Captcha.Kocaptcha, endpoint: "https://captcha.kotobank.ch"
# Upload configuration
config :pleroma, Pleroma.Upload,
uploader: Pleroma.Uploaders.Local,
filters: [Pleroma.Upload.Filter.Dedupe],
link_name: false,
proxy_remote: false,
filename_display_max_length: 30,
default_description: nil,
base_url: nil
config :pleroma, Pleroma.Uploaders.Local, uploads: "uploads"
config :pleroma, Pleroma.Uploaders.S3,
bucket: nil,
bucket_namespace: nil,
truncated_namespace: nil,
streaming_enabled: true
config :ex_aws, :s3,
# host: "s3.wasabisys.com", # required if not Amazon AWS
access_key_id: nil,
secret_access_key: nil,
# region: "us-east-1", # may be required for Amazon AWS
scheme: "https://"
config :pleroma, :emoji,
shortcode_globs: ["/emoji/custom/**/*.png"],
pack_extensions: [".png", ".gif"],
groups: [
# Put groups that have higher priority than defaults here. Example in `docs/config/custom_emoji.md`
Blobcat: ["/emoji/blobcat/*.png", "/emoji/blobcat/*.gif"],
Custom: ["/emoji/custom/*.png", "/emoji/custom/*.gif"],
Finmoji: ["/emoji/finmoji/*.png"],
Veemoji: ["/emoji/veemoji/*.png", "/emoji/veemoji/*.gif"]
],
default_manifest: "https://git.pleroma.social/pleroma/emoji-index/raw/master/index.json",
shared_pack_cache_seconds_per_file: 60
config :pleroma, :uri_schemes,
valid_schemes: [
"https",
"http",
"dat",
"dweb",
"gopher",
"hyper",
"ipfs",
"ipns",
"irc",
"ircs",
"magnet",
"mailto",
"mumble",
"ssb",
"xmpp"
]
websocket_config = [
path: "/websocket",
serializer: [
{Phoenix.Socket.V1.JSONSerializer, "~> 1.0.0"},
{Phoenix.Socket.V2.JSONSerializer, "~> 2.0.0"}
],
timeout: 60_000,
transport_log: false,
compress: false
]
# Configures the endpoint
config :pleroma, Pleroma.Web.Endpoint,
instrumenters: [Pleroma.Web.Endpoint.Instrumenter],
url: [host: "veenus.art", scheme: "https", port: 443],
http: [
ip: {127, 0, 0, 1},
dispatch: [
{:_,
[
{"/api/v1/streaming", Pleroma.Web.MastodonAPI.WebsocketHandler, []},
{"/websocket", Phoenix.Endpoint.CowboyWebSocket,
{Phoenix.Transports.WebSocket,
{Pleroma.Web.Endpoint, Pleroma.Web.UserSocket, websocket_config}}},
{:_, Phoenix.Endpoint.Cowboy2Handler, {Pleroma.Web.Endpoint, []}}
]}
]
],
protocol: "https",
secret_key_base: <REDACTED>,
signing_salt: <REDACTED>,
render_errors: [view: Pleroma.Web.ErrorView, accepts: ~w(json)],
pubsub_server: Pleroma.PubSub,
secure_cookie_flag: true,
extra_cookie_attrs: [
"SameSite=Lax"
]
# Configures Elixir's Logger
config :logger, :console,
level: :debug,
format: "\n$time $metadata[$level] $message\n",
metadata: [:request_id]
config :logger, :ex_syslogger,
level: :debug,
ident: "pleroma",
format: "$metadata[$level] $message",
metadata: [:request_id]
config :quack,
level: :warn,
meta: [:all],
webhook_url: "https://hooks.slack.com/services/YOUR-KEY-HERE"
config :mime, :types, %{
"application/xml" => ["xml"],
"application/xrd+xml" => ["xrd+xml"],
"application/jrd+json" => ["jrd+json"],
"application/activity+json" => ["activity+json"],
"application/ld+json" => ["activity+json"]
}
config :tesla, adapter: Tesla.Adapter.Hackney
# Configures http settings, upstream proxy etc.
config :pleroma, :http,
proxy_url: nil,
send_user_agent: true,
user_agent: :default,
adapter: []
config :pleroma, :instance,
name: "Veenus - For artists and art lovers",
email: <REDACTED>,
notify_email: <REDACTED>,
description: "A Pleroma instance for artists and art lovers",
background_image: "/images/sakura-bg.png",
instance_thumbnail: "/instance/thumbnail.jpeg",
limit: 5_000,
description_limit: 5_000,
remote_limit: 100_000,
upload_limit: 16_000_000,
avatar_upload_limit: 2_000_000,
background_upload_limit: 4_000_000,
banner_upload_limit: 4_000_000,
poll_limits: %{
max_options: 20,
max_option_chars: 200,
min_expiration: 0,
max_expiration: 365 * 24 * 60 * 60
},
registrations_open: true,
invites_enabled: true,
account_activation_required: false,
account_approval_required: false,
federating: true,
federation_incoming_replies_max_depth: 100,
federation_reachability_timeout_days: 7,
federation_publisher_modules: [
Pleroma.Web.ActivityPub.Publisher
],
allow_relay: true,
public: true,
quarantined_instances: ["sunbeam.city"],
managed_config: true,
static_dir: "instance/static/",
allowed_post_formats: [
"text/plain",
"text/html",
"text/markdown",
"text/bbcode"
],
autofollowed_nicknames: ["modlog"],
autofollowing_nicknames: [],
max_pinned_statuses: 5,
attachment_links: true,
max_report_comment_size: 1000,
safe_dm_mentions: false,
healthcheck: false,
remote_post_retention_days: 90,
skip_thread_containment: true,
limit_to_local_content: :unauthenticated,
user_bio_length: 5000,
user_name_length: 100,
max_account_fields: 10,
max_remote_account_fields: 20,
account_field_name_length: 512,
account_field_value_length: 2048,
registration_reason_length: 500,
external_user_synchronization: true,
extended_nickname_format: true,
cleanup_attachments: false,
multi_factor_authentication: [
totp: [
# digits 6 or 8
digits: 6,
period: 30
],
backup_codes: [
number: 5,
length: 16
]
],
show_reactions: true,
password_reset_token_validity: 60 * 60 * 24,
profile_directory: true,
privileged_staff: false,
max_endorsed_users: 20,
birthday_required: false,
birthday_min_age: 0,
max_media_attachments: 1_000
config :pleroma, :welcome,
direct_message: [
enabled: false,
sender_nickname: nil,
message: nil
],
chat_message: [
enabled: false,
sender_nickname: nil,
message: nil
],
email: [
enabled: false,
sender: nil,
subject: "Welcome to <%= instance_name %>",
html: "Welcome to <%= instance_name %>",
text: "Welcome to <%= instance_name %>"
]
config :pleroma, :feed,
post_title: %{
max_length: 100,
omission: "..."
}
config :pleroma, :markup,
# XXX - unfortunately, inline images must be enabled by default right now, because
# of custom emoji. Issue #275 discusses defanging that somehow.
allow_inline_images: true,
allow_headings: false,
allow_tables: false,
allow_fonts: false,
scrub_policy: [
Pleroma.HTML.Scrubber.Default,
Pleroma.HTML.Transform.MediaProxy
]
config :pleroma, :frontend_configurations,
pleroma_fe: %{
alwaysShowSubjectInput: true,
background: "/images/sakura-bg.png",
collapseMessageWithSubject: true,
disableChat: false,
greentext: true,
hideFilteredStatuses: true,
hideMutedPosts: true,
hidePostStats: false,
hideSitename: false,
hideUserStats: false,
loginMethod: "password",
logo: "/static/logo.svg",
logoMargin: ".1em",
logoMask: false,
minimalScopesMode: false,
noAttachmentLinks: false,
nsfwCensorImage: "",
postContentType: "text/plain",
redirectRootLogin: "/main/friends",
redirectRootNoLogin: "/main/all",
scopeCopy: true,
sidebarRight: false,
showFeaturesPanel: true,
showInstanceSpecificPanel: true,
subjectLineBehavior: "masto",
theme: "sakura-v3",
webPushNotifications: false
}
config :pleroma, :assets,
mascots: [
pleroma_fox_tan: %{
url: "/images/pleroma-fox-tan-smol.png",
mime_type: "image/png"
},
pleroma_fox_tan_shy: %{
url: "/images/pleroma-fox-tan-shy.png",
mime_type: "image/png"
},
vee_chan: %{
url: "/images/Vee-chan.png",
mime_type: "image/png"
}
],
default_mascot: :vee_chan
config :pleroma, :manifest,
icons: [
%{
src: "/static/logo.svg",
type: "image/svg+xml"
}
],
theme_color: "#282c37",
background_color: "#191b22"
config :pleroma, :activitypub,
unfollow_blocked: true,
outgoing_blocks: false,
blockers_visible: true,
follow_handshake_timeout: 500,
note_replies_output_limit: 5,
sign_object_fetches: true,
authorized_fetch_mode: false
config :pleroma, :streamer,
workers: 3,
overflow_workers: 2
config :pleroma, :user, deny_follow_blocked: true
config :pleroma, :mrf_normalize_markup, scrub_policy: Pleroma.HTML.Scrubber.Default
config :pleroma, :mrf_rejectnonpublic,
allow_followersonly: false,
allow_direct: false
config :pleroma, :mrf_hellthread,
delist_threshold: 10,
reject_threshold: 20
config :pleroma, :mrf_simple,
media_removal: [],
media_nsfw: [{"baraag.net", "Untagged NSFW"}, {"anime.website", "Untagged NSFW"}, {"pawoo.net", "Untagged NSFW"}, {"stereophonic.space", "Untagged NSFW"}, {"mstdn.jp", "Untagged NSFW"}],
federated_timeline_removal: [{"switter.at", "Spamminess, untagged NSFW"}, {"tabletop.social", "Instance blocked us, so we can't interact with them"}, {"mastodon.bida.im", "Instance blocked us, so we can't interact with them"}],
report_removal: [],
reject: [],
accept: [],
avatar_removal: [{"switter.at", "NSFW avatars"}],
banner_removal: [{"switter.at", "NSFW banners"}]
config :pleroma, :mrf_steal_emoji,
hosts: ["fedi.absturztau.be", "blob.cat", "udongein.xyz", "expired.mentality.rip", "fedi.vulpes.one", "princess.cat"],
rejected_shortcodes: nil,
size_limit: nil
config :pleroma, :mrf_keyword,
reject: [],
federated_timeline_removal: [],
replace: []
config :pleroma, :mrf_subchain, match_actor: %{}
config :pleroma, :mrf_vocabulary,
accept: [],
reject: []
# threshold of 7 days
config :pleroma, :mrf_object_age,
threshold: 604_800,
actions: [:delist, :strip_followers]
config :pleroma, :rich_media,
enabled: true,
ignore_hosts: [],
ignore_tld: ["local", "localdomain", "lan"],
parsers: [
Pleroma.Web.RichMedia.Parsers.TwitterCard,
Pleroma.Web.RichMedia.Parsers.OEmbed
],
failure_backoff: 60_000,
ttl_setters: [Pleroma.Web.RichMedia.Parser.TTL.AwsSignedUrl]
config :pleroma, :media_proxy,
enabled: false,
invalidation: [
enabled: false,
provider: Pleroma.Web.MediaProxy.Invalidation.Script
],
proxy_opts: [
redirect_on_failure: true,
max_body_length: 25 * 1_048_576,
# Note: max_read_duration defaults to Pleroma.ReverseProxy.max_read_duration_default/1
http: [
follow_redirect: true,
pool: :media
]
],
whitelist: []
config :pleroma, Pleroma.Web.MediaProxy.Invalidation.Http,
method: :purge,
headers: [],
options: []
config :pleroma, Pleroma.Web.MediaProxy.Invalidation.Script,
script_path: nil,
url_format: nil
# Note: media preview proxy depends on media proxy to be enabled
config :pleroma, :media_preview_proxy,
enabled: false,
thumbnail_max_width: 600,
thumbnail_max_height: 600,
image_quality: 85,
min_content_length: 100 * 1024
config :pleroma, :shout,
enabled: true,
limit: 5_000
config :phoenix, :format_encoders, json: Jason, "activity+json": Jason
config :phoenix, :json_library, Jason
config :phoenix, :filter_parameters, ["password", "confirm"]
config :pleroma, :gopher,
enabled: false,
ip: {0, 0, 0, 0},
port: 9999
config :pleroma, Pleroma.Web.Metadata,
providers: [
Pleroma.Web.Metadata.Providers.OpenGraph,
Pleroma.Web.Metadata.Providers.TwitterCard
],
unfurl_nsfw: false
config :pleroma, Pleroma.Web.Preload,
providers: [
Pleroma.Web.Preload.Providers.Instance
]
config :pleroma, :http_security,
enabled: true,
sts: false,
sts_max_age: 31_536_000,
ct_max_age: 2_592_000,
referrer_policy: "same-origin"
config :cors_plug,
max_age: 86_400,
methods: ["POST", "PUT", "DELETE", "GET", "PATCH", "OPTIONS"],
expose: [
"Link",
"X-RateLimit-Reset",
"X-RateLimit-Limit",
"X-RateLimit-Remaining",
"X-Request-Id",
"Idempotency-Key"
],
credentials: true,
headers: ["Authorization", "Content-Type", "Idempotency-Key"]
config :pleroma, Pleroma.User,
restricted_nicknames: [
".well-known",
"~",
"about",
"activities",
"api",
"auth",
"check_password",
"dev",
"friend-requests",
"inbox",
"internal",
"main",
"media",
"nodeinfo",
"notice",
"oauth",
"objects",
"ostatus_subscribe",
"pleroma",
"proxy",
"push",
"registration",
"relay",
"settings",
"status",
"tag",
"user-search",
"user_exists",
"users",
"web",
"verify_credentials",
"update_credentials",
"relationships",
"search",
"confirmation_resend",
"mfa"
],
email_blacklist: []
config :pleroma, Oban,
repo: Pleroma.Repo,
log: false,
queues: [
activity_expiration: 10,
federator_incoming: 50,
federator_outgoing: 50,
web_push: 50,
mailer: 10,
transmogrifier: 20,
scheduled_activities: 10,
poll_notifications: 10,
background: 5,
remote_fetcher: 2,
attachments_cleanup: 5,
new_users_digest: 1
],
crontab: [
{"0 0 * * 0", Pleroma.Workers.Cron.DigestEmailsWorker},
{"0 0 * * *", Pleroma.Workers.Cron.NewUsersDigestWorker}
]
config :pleroma, :workers,
retries: [
federator_incoming: 5,
federator_outgoing: 5
]
config :pleroma, :database_config_whitelist, [
{:pleroma, :activitypub},
{:pleroma, :auth},
{:esshd},
{:pleroma, Pleroma.Captcha},
{:pleroma, :frontend_configurations},
{:pleroma, :gopher},
{:pleroma, :http},
{:pleroma, :instance},
{:pleroma, Oban},
{:logger},
{:pleroma, Pleroma.Emails.Mailer},
{:pleroma, :media_proxy},
{:pleroma, Pleroma.Web.Metadata},
{:pleroma, :mrf_simple},
{:pleroma, :mrf_hellthread},
{:pleroma, :rate_limit},
{:web_push_encryption, :vapid_details},
{:pleroma, Pleroma.Upload},
{:pleroma, Pleroma.Web.Plugs.RemoteIp},
{:pleroma, :instances_favicons},
{:pleroma, Pleroma.Formatter}
]
config :pleroma, :media_proxy,
enabled: true,
redirect_on_failure: true
#base_url: "https://cache.pleroma.social"
scheduled_jobs =
with digest_config <- Application.get_env(:pleroma, :email_notifications)[:digest],
true <- digest_config[:active] do
[{digest_config[:schedule], {Pleroma.Daemons.DigestEmailDaemon, :perform, []}}]
else
_ -> []
end
config :pleroma, Pleroma.Scheduler,
global: true,
overlap: true,
timezone: :utc,
jobs: scheduled_jobs
config :pleroma, Pleroma.Uploaders.MDII,
cgi: "https://mdii.sakura.ne.jp/mdii-post.cgi",
files: "https://mdii.sakura.ne.jp"
config :pleroma, :markup,
# XXX - unfortunately, inline images must be enabled by default right now, because
# of custom emoji. Issue #275 discusses defanging that somehow.
allow_inline_images: true,
allow_headings: false,
allow_tables: false,
allow_fonts: false,
scrub_policy: [
Pleroma.HTML.Scrubber.Default,
Pleroma.HTML.Transform.MediaProxy
]
config :pleroma, :suggestions,
enabled: false,
third_party_engine:
"http://vinayaka.distsn.org/cgi-bin/vinayaka-user-match-suggestions-api.cgi?{{host}}+{{user}}",
timeout: 300_000,
limit: 40,
web: "https://vinayaka.distsn.org"
config :pleroma, :http_security,
enabled: true,
sts: false,
sts_max_age: 31_536_000,
ct_max_age: 2_592_000,
referrer_policy: "same-origin"
config :cors_plug,
max_age: 86_400,
methods: ["POST", "PUT", "DELETE", "GET", "PATCH", "OPTIONS"],
expose: [
"Link",
"X-RateLimit-Reset",
"X-RateLimit-Limit",
"X-RateLimit-Remaining",
"X-Request-Id",
"Idempotency-Key"
],
credentials: true,
headers: ["Authorization", "Content-Type", "Idempotency-Key"]
config :pleroma, Oban,
repo: Pleroma.Repo,
log: false,
queues: [
activity_expiration: 10,
federator_incoming: 50,
federator_outgoing: 50,
web_push: 50,
mailer: 10,
transmogrifier: 20,
scheduled_activities: 10,
background: 5,
remote_fetcher: 2,
attachments_cleanup: 5,
new_users_digest: 1
],
crontab: [
{"0 0 * * 0", Pleroma.Workers.Cron.DigestEmailsWorker},
{"0 0 * * *", Pleroma.Workers.Cron.NewUsersDigestWorker}
]
config :pleroma, :workers,
retries: [
federator_incoming: 5,
federator_outgoing: 5
]
config :pleroma, Pleroma.Formatter,
class: false,
rel: "ugc",
new_window: true,
truncate: 50,
strip_prefix: true,
extra: true,
validate_tld: :no_scheme
config :pleroma, :ldap,
enabled: System.get_env("LDAP_ENABLED") == "true",
host: System.get_env("LDAP_HOST") || "localhost",
port: String.to_integer(System.get_env("LDAP_PORT") || "389"),
ssl: System.get_env("LDAP_SSL") == "true",
sslopts: [],
tls: System.get_env("LDAP_TLS") == "true",
tlsopts: [],
base: System.get_env("LDAP_BASE") || "dc=example,dc=com",
uid: System.get_env("LDAP_UID") || "cn"
config :esshd,
enabled: false
oauth_consumer_strategies =
System.get_env("OAUTH_CONSUMER_STRATEGIES")
|> to_string()
|> String.split()
|> Enum.map(&hd(String.split(&1, ":")))
ueberauth_providers =
for strategy <- oauth_consumer_strategies do
strategy_module_name = "Elixir.Ueberauth.Strategy.#{String.capitalize(strategy)}"
strategy_module = String.to_atom(strategy_module_name)
{String.to_atom(strategy), {strategy_module, [callback_params: ["state"]]}}
end
config :ueberauth,
Ueberauth,
base_path: "/oauth",
providers: ueberauth_providers
config :pleroma, :auth, oauth_consumer_strategies: oauth_consumer_strategies
config :pleroma, Pleroma.Emails.Mailer, adapter: Swoosh.Adapters.Sendmail, enabled: false
config :pleroma, Pleroma.Emails.UserEmail,
logo: "/static/logo.png",
styling: %{
link_color: "#db3ab9",
background_color: "#f5dff65",
content_background_color: "#f5c8f6",
header_color: "#671569",
text_color: "#671569",
text_muted_color: "#fc86ff"
}
config :pleroma, Pleroma.Emails.NewUsersDigestEmail, enabled: false
config :prometheus, Pleroma.Web.Endpoint.MetricsExporter,
enabled: false,
auth: false,
ip_whitelist: [],
path: "/api/pleroma/app_metrics",
format: :text
config :pleroma, Pleroma.ScheduledActivity,
daily_user_limit: 25,
total_user_limit: 300,
enabled: true
config :pleroma, :email_notifications,
digest: %{
active: true,
interval: 7,
inactivity_threshold: 7
}
config :pleroma, :oauth2,
token_expires_in: 3600 * 24 * 365 * 100,
issue_new_refresh_token: true,
clean_expired_tokens: false
config :pleroma, :database, rum_enabled: false
config :pleroma, :features, improved_hashtag_timeline: :auto
config :pleroma, :populate_hashtags_table, fault_rate_allowance: 0.01
config :pleroma, :env, Mix.env()
config :http_signatures,
adapter: Pleroma.Signature
config :pleroma, :rate_limit,
authentication: {60_000, 15},
timeline: {500, 3},
search: [{1000, 10}, {1000, 30}],
app_account_creation: {1_800_000, 25},
relations_actions: {10_000, 10},
relation_id_action: {60_000, 2},
statuses_actions: {10_000, 15},
status_id_action: {60_000, 3},
password_reset: {1_800_000, 5},
account_confirmation_resend: {8_640_000, 5},
ap_routes: {60_000, 15}
config :pleroma, Pleroma.Workers.PurgeExpiredActivity, enabled: true, min_lifetime: 600
config :pleroma, Pleroma.Web.Plugs.RemoteIp,
enabled: true,
headers: ["x-forwarded-for"],
proxies: [],
reserved: [
"127.0.0.0/8",
"::1/128",
"fc00::/7",
"10.0.0.0/8",
"172.16.0.0/12",
"192.168.0.0/16"
]
config :pleroma, :static_fe, enabled: false
# Example of frontend configuration
# This example will make us serve the primary frontend from the
# frontends directory within your `:pleroma, :instance, static_dir`.
# e.g., instance/static/frontends/pleroma/develop/
#
# With no frontend configuration, the bundled files from the `static` directory will
# be used.
#
# config :pleroma, :frontends,
# primary: %{"name" => "pleroma-fe", "ref" => "develop"},
# admin: %{"name" => "admin-fe", "ref" => "stable"},
# available: %{...}
config :pleroma, :frontends,
available: %{
"pleroma-fe" => %{
"name" => "pleroma-fe",
"git" => "https://git.pleroma.social/pleroma/pleroma-fe",
"build_url" =>
"https://git.pleroma.social/pleroma/pleroma-fe/-/jobs/artifacts/${ref}/download?job=build",
"ref" => "develop"
},
"admin-fe" => %{
"name" => "admin-fe",
"git" => "https://git.pleroma.social/pleroma/admin-fe",
"build_url" =>
"https://git.pleroma.social/pleroma/admin-fe/-/jobs/artifacts/${ref}/download?job=build",
"ref" => "develop"
}
}
config :pleroma, :web_cache_ttl,
activity_pub: nil,
activity_pub_question: 30_000
config :pleroma, :modules, runtime_dir: "instance/modules"
config :pleroma, configurable_from_database: true
config :pleroma, Pleroma.Repo,
parameters: [gin_fuzzy_search_limit: "500"],
prepare: :unnamed
config :pleroma, :connections_pool,
reclaim_multiplier: 0.1,
connection_acquisition_wait: 250,
connection_acquisition_retries: 5,
max_connections: 250,
max_idle_time: 30_000,
retry: 0,
connect_timeout: 5_000
config :pleroma, :pools,
federation: [
size: 50,
max_waiting: 10
],
media: [
size: 50,
max_waiting: 10
],
upload: [
size: 25,
max_waiting: 5
],
default: [
size: 10,
max_waiting: 2
]
config :pleroma, :hackney_pools,
federation: [
max_connections: 50,
timeout: 150_000
],
media: [
max_connections: 50,
timeout: 150_000
],
upload: [
max_connections: 25,
timeout: 300_000
]
private_instance? = :if_instance_is_private
config :pleroma, :restrict_unauthenticated,
timelines: %{local: private_instance?, federated: private_instance?},
profiles: %{local: private_instance?, remote: private_instance?},
activities: %{local: private_instance?, remote: private_instance?}
config :pleroma, Pleroma.Web.ApiSpec.CastAndValidate, strict: false
config :pleroma, :mrf,
policies: [
Pleroma.Web.ActivityPub.MRF.SimplePolicy,
Pleroma.Web.ActivityPub.MRF.HellthreadPolicy,
Pleroma.Web.ActivityPub.MRF.AntiFollowbotPolicy,
Pleroma.Web.ActivityPub.MRF.ObjectAgePolicy,
Pleroma.Web.ActivityPub.MRF.StealEmojiPolicy,
Pleroma.Web.ActivityPub.MRF.TagPolicy
],
transparency: true,
transparency_exclusions: []
config :tzdata, :http_client, Pleroma.HTTP.Tzdata
config :ex_aws, http_client: Pleroma.HTTP.ExAws
config :web_push_encryption, http_client: Pleroma.HTTP.WebPush
config :pleroma, :instances_favicons, enabled: true
config :floki, :html_parser, Floki.HTMLParser.FastHtml
config :pleroma, Pleroma.Web.Auth.Authenticator, Pleroma.Web.Auth.PleromaAuthenticator
config :pleroma, Pleroma.User.Backup,
purge_after_days: 30,
limit_days: 7,
dir: nil
config :pleroma, ConcurrentLimiter, [
{Pleroma.Web.RichMedia.Helpers, [max_running: 5, max_waiting: 5]},
{Pleroma.Web.ActivityPub.MRF.MediaProxyWarmingPolicy, [max_running: 5, max_waiting: 5]}
]
# Configure web push notifications
config :web_push_encryption, :vapid_details,
subject: <REDACTED>,
public_key: <REDACTED>,
private_key: <REDACTED>,
config :pleroma, :instance, static_dir: "instance/static/"
config :pleroma, Pleroma.Uploaders.Local, uploads: "uploads"
# Enable Strict-Transport-Security once SSL is working:
# config :pleroma, :http_security,
# sts: true
# Configure S3 support if desired.
# The public S3 endpoint is different depending on region and provider,
# consult your S3 provider's documentation for details on what to use.
#
# config :pleroma, Pleroma.Uploaders.S3,
# bucket: "some-bucket",
# public_endpoint: "https://s3.amazonaws.com"
#
# Configure S3 credentials:
# config :ex_aws, :s3,
# access_key_id: "xxxxxxxxxxxxx",
# secret_access_key: "yyyyyyyyyyyy",
# region: "us-east-1",
# scheme: "https://"
#
# For using third-party S3 clones like wasabi, also do:
# config :ex_aws, :s3,
# host: "s3.wasabisys.com"
config :joken, default_signer:
As a sidenote, I do most of my config in AdminFE, so not everything is shown here.
If any other info is necessary, I'm willing to provide it.
Regards, Lotte V