Lemmy Support

4681 readers
1 users here now

Support / questions about Lemmy.

Matrix Space: #lemmy-space

founded 6 years ago
MODERATORS
1
 
 

So, I am currently in the process of setting up a PeerTube and Lemmy instance, both on a dedicated Server running Debian 12. PeerTube seems to work properly by now, but the SMTP settings for Lemmy have been a bit of a headscratcher, and I wasn't able to find a solution.

To set up Lemmy, I followed the "from scratch" guide, and, besides the mail issue, it seems like everything else is working so far.

Note that I am currently in the process of learning-by-doing with this whole project. So, I would not rule out, that I may have overlooked something really obvious and stupid, sorry for taking your time, then.

My settings in /opt/lemmy/lemmy-server/lemmy.hjson:

  email: {
    # Hostname and port of the smtp server
    smtp_server: "localhost:587"
    # Login name for smtp server
    smtp_login: "lemmymail"
    # Password to login to the smtp server
    smtp_password: "REDACTED"
    # Address to send emails from, eg "noreply@your-instance.com"
    smtp_from_address: "noreply@abnormalbeings.space"
    # Whether or not smtp connections should use tls. Can be none, tls, or starttls
    tls_type: "starttls"
  }

The error message I get, when trying both resetting a password, or applying as a new user:

WARN Error encountered while processing the incoming HTTP request: lemmy_server::root_span_builder: EmailSendFailed: Connection error: Connection error: invalid peer certificate: NotValidForName

"lemmymail" exists as a local user on the server.

# dovecot --version 2.3.19.1 (9b53102964)

If needed, I can provide additional info from dovecot and/or postfix configurations in the backend. Similar settings as above have worked for PeerTube. As a reference - these are working in production.yaml there:

Peertube smtp settings

# SMTP server to send emails
smtp:
  # smtp or sendmail
  transport: smtp
  # Path to sendmail command. Required if you use sendmail transport
  sendmail: null
  hostname: mail.abnormalbeings.space
  port: 587 # If you use StartTLS: 587
  username: 'peertube@abnormalbeings.space'
  password: 'REDACTED'
  tls: false # If you use StartTLS: false
  disable_starttls: false
  ca_file: null # Used for self signed certificates
  from_address: 'peertube@abnormalbeings.space'

Things I have tried:

  • Changing the user from and to a user with @abnormalbeings.space in the string
  • Changing the user to one I know works, as I use them for automatic PeerTube mail messages
  • Changing the hostname to a FQDN url instead of localhost (without https://)
  • Trying different ports (did not expect that to work)
  • changing tls_type to "none"
  • changing the Password to one containing no special characters (and back)
  • changing smtp_from_address to an actually existing user
  • restarting nginx, dovecot, postfix, lemmy-server and lemmy-ui for good measure after every change
2
 
 

Essentially, I'd like to have pictrs delete all of the images that aren't uploaded by my users, because my storage usage was going through the roof, so I just disabled the proxying of images. Here is my config:

x-logging: &default-logging
  driver: "json-file"
  options:
    max-size: "50m"
    max-file: "4"

services:
  proxy:
    image: docker.io/library/nginx
    volumes:
      - ./nginx_internal.conf:/etc/nginx/nginx.conf:ro,Z
      - ./proxy_params:/etc/nginx/proxy_params:ro,Z
    restart: always
    logging: *default-logging
    depends_on:
      - pictrs
      - lemmy-ui
    labels:
      - traefik.enable=true
      - traefik.http.routers.http-lemmy.entryPoints=http
      - traefik.http.routers.http-lemmy.rule=Host(`gregtech.eu`)
      - traefik.http.middlewares.https_redirect.redirectscheme.scheme=https
      - traefik.http.middlewares.https_redirect.redirectscheme.permanent=true
      - traefik.http.routers.http-lemmy.middlewares=https_redirect
      - traefik.http.routers.https-lemmy.entryPoints=https
      - traefik.http.routers.https-lemmy.rule=Host(`gregtech.eu`)
      - traefik.http.routers.https-lemmy.service=lemmy
      - traefik.http.routers.https-lemmy.tls=true
      - traefik.http.services.lemmy.loadbalancer.server.port=8536
      - traefik.http.routers.https-lemmy.tls.certResolver=le-ssl


  lemmy:
    image: dessalines/lemmy:0.19.8
    hostname: lemmy
    restart: always
    logging: *default-logging
    volumes:
      - ./lemmy.hjson:/config/config.hjson:Z
    depends_on:
      - postgres
      - pictrs
    networks:
      - default
      - database

  lemmy-ui:
    image: ghcr.io/xyphyn/photon:latest
    restart: always
    logging: *default-logging
    environment:
      - PUBLIC_INSTANCE_URL=gregtech.eu
      - PUBLIC_MIGRATE_COOKIE=true
#      - PUBLIC_SSR_ENABLED=true
      - PUBLIC_DEFAULT_FEED=All
      - PUBLIC_DEFAULT_FEED_SORT=Hot
      - PUBLIC_DEFAULT_COMMENT_SORT=Top
      - PUBLIC_LOCK_TO_INSTANCE=false



  pictrs:
    image: docker.io/asonix/pictrs:0.5
    # this needs to match the pictrs url in lemmy.hjson
    hostname: pictrs
    # we can set options to pictrs like this, here we set max. image size and forced format for conversion
    # entrypoint: /sbin/tini -- /usr/local/bin/pict-rs -p /mnt -m 4 --image-format webp
    #entrypoint: /sbin/tini -- /usr/local/bin/pict-rs run  --max-file-count 10  --media-max-file-size 500 --media-retention-proxy 10d --media-retention-variants 10d  filesystem sled -p /mnt
    user: 991:991
    environment:
      - PICTRS__STORE__TYPE=object_storage
      - PICTRS__STORE__ENDPOINT=https://s3.eu-central-003.backblazeb2.com/
      - PICTRS__STORE__BUCKET_NAME=gregtech-lemmy
      - PICTRS__STORE__REGION=eu-central
      - PICTRS__STORE__USE_PATH_STYLE=false
      - PICTRS__STORE__ACCESS_KEY=redacted
      - PICTRS__STORE__SECRET_KEY=redacted
      - PICTRS__MEDIA__RETENTION__VARIANTS=0d
      - PICTRS__MEDIA__RETENTION__PROXY=0d
      - PICTRS__SERVER__API_KEY=redacted_api_key
      #- PICTRS__MEDIA__IMAGE__FORMAT=webp
      #- PICTRS__MEDIA__IMAGE__QUALITY__WEBP=50
      #- PICTRS__MEDIA__ANIMATION__QUALITY=50
    volumes:
      - ./volumes/pictrs:/mnt:Z
    restart: always
    logging: *default-logging

  postgres:
    image: docker.io/postgres:16-alpine
    hostname: postgres
    volumes:
      - ./volumes/postgres:/var/lib/postgresql/data:Z
      #- ./customPostgresql.conf:/etc/postgresql.conf:Z
    restart: always
    #command: postgres -c config_file=/etc/postgresql.conf
    shm_size: 256M
    logging: *default-logging
    environment:
      - POSTGRES_PASSWORD=password
      - POSTGRES_USER=lemmy
      - POSTGRES_DB=lemmy
    networks:
      - database
  postfix:
    image: docker.io/mwader/postfix-relay
    restart: "always"
    logging: *default-logging

networks:
  default:
    name: traefik_access
    external: true
  database:
3
 
 

Hello

Is there any way to use invite links for new Lemmy users ?

Also, is there a tracking system to know what user invited each user ?

Thanks.

4
 
 

I can technically block every meme community I see, but was wondering if there's a way to filter those out.

Just want to sometimes see some news or discussions without endlessly scrolling memes.

Thanks!

5
 
 

In the image example, I'm logged into my instance. I learn about another instance and want to find out what communities are on it. The search feature does nothing here. Am I typing it wrong? Is there a better alternative for exploring new communities while logged into my instance?

6
 
 
  1. As the owner of Redlemmy.com, I create a post in a community on Lemmy.world.
  2. Bob responds to my post
  3. In that post I see mod actions, "ban from community (instance only)" - does that mean he's banned from a community on redlemmy.com, or lemmy.world?
7
 
 

The animated WEBPs that I post to Lemmy generally seem just fine on other instances. But this particular WEBP is broken for some reason, appearing on other instances as a still WEBP of the first frame of the animation. I created and uploaded the WEBP the same way that I usually do, but this one federated differently. Instead of the canonical URL appearing on other instances the way that it usually does, I believe the file got "cached" or something by the home instance of the remote community that I posted it to. As you can see in these two URLs below, the canonical link ends in .webp?format=webp, but the remote link ends in .png?format=webp.

  • Canonical URL: https://feddit.org/pictrs/image/f4b5957a-63ce-48c3-ae65-4f61497cfe10.webp?format=webp
  • Remote URL: https://lemmy.sdf.org/pictrs/image/d7248da3-ec33-487c-ac29-65cceb2e5edb.png?format=webp

Links to the post on a few different instances:

My instance uses the animated canonical URL, but other instances use the still remote URL. So I have a few questions:

  1. What is actually happening here? Did the remote community's instance "cache" the file incorrectly?
  2. Why does it usually federate the canonical URL, but only this post federated a "cached" URL (or whatever it is)?
  3. Is there anything I can do to prevent this in the future, short of uploading the WEBP to an external host (i.e. not Lemmy)?

Unrelated to this particular issue, but I am now noticing that on lemmy.ml, all of my WEBPs have broken thumbnails. If you actually open the posts, they are fine; it is just the thumbnails that do not work.

lemmy.ml: https://lemmy.ml/post/24020481

8
 
 

cross-posted from: https://gregtech.eu/post/4809104

The storage usage is at 340GB currently, which is a lot and it's rapidly increasing. I use Backblaze B2 for my storage. Here is my docker compose file: x-logging: &default-logging driver: "json-file" options: max-size: "50m" max-file: "4"

services:
  proxy:
    image: docker.io/library/nginx
    volumes:
      - ./nginx_internal.conf:/etc/nginx/nginx.conf:ro,Z
      - ./proxy_params:/etc/nginx/proxy_params:ro,Z
    restart: always
    logging: *default-logging
    depends_on:
      - pictrs
      - lemmy-ui
    labels:
      - traefik.enable=true
      - traefik.http.routers.http-lemmy.entryPoints=http
      - traefik.http.routers.http-lemmy.rule=Host(`gregtech.eu`)
      - traefik.http.middlewares.https_redirect.redirectscheme.scheme=https
      - traefik.http.middlewares.https_redirect.redirectscheme.permanent=true
      - traefik.http.routers.http-lemmy.middlewares=https_redirect
      - traefik.http.routers.https-lemmy.entryPoints=https
      - traefik.http.routers.https-lemmy.rule=Host(`gregtech.eu`)
      - traefik.http.routers.https-lemmy.service=lemmy
      - traefik.http.routers.https-lemmy.tls=true
      - traefik.http.services.lemmy.loadbalancer.server.port=8536
      - traefik.http.routers.https-lemmy.tls.certResolver=le-ssl


  lemmy:
    image: dessalines/lemmy:0.19.8
    hostname: lemmy
    restart: always
    logging: *default-logging
    volumes:
      - ./lemmy.hjson:/config/config.hjson:Z
    depends_on:
      - postgres
      - pictrs
    networks:
      - default
      - database

  lemmy-ui:
    image: dessalines/lemmy-ui:0.19.8
    volumes:
      - ./volumes/lemmy-ui/extra_themes:/app/extra_themes:Z
    depends_on:
      - lemmy
    restart: always
    logging: *default-logging
    environment:
      - LEMMY_UI_LEMMY_INTERNAL_HOST=lemmy:8536
      - LEMMY_UI_LEMMY_EXTERNAL_HOST=gregtech.eu
      - LEMMY_UI_HTTPS=true

  pictrs:
    image: docker.io/asonix/pictrs:0.5
    # this needs to match the pictrs url in lemmy.hjson
    hostname: pictrs
    # we can set options to pictrs like this, here we set max. image size and forced format for conversion
    # entrypoint: /sbin/tini -- /usr/local/bin/pict-rs -p /mnt -m 4 --image-format webp
    #entrypoint: /sbin/tini -- /usr/local/bin/pict-rs run  --max-file-count 10  --media-max-file-size 500 --media-retention-proxy 10d --media-retention-variants 10d  filesystem sled -p /mnt
    user: 991:991
    environment:
      - PICTRS__STORE__TYPE=object_storage
      - PICTRS__STORE__ENDPOINT=https://s3.eu-central-003.backblazeb2.com/
      - PICTRS__STORE__BUCKET_NAME=gregtech-lemmy
      - PICTRS__STORE__REGION=eu-central
      - PICTRS__STORE__USE_PATH_STYLE=false
      - PICTRS__STORE__ACCESS_KEY=redacted
      - PICTRS__STORE__SECRET_KEY=redacted
      - MEDIA__RETENTION__VARIANTS=4d
      - MEDIA__RETENTION__PROXY=4d
      #- PICTRS__MEDIA__IMAGE__FORMAT=webp
      #- PICTRS__MEDIA__IMAGE__QUALITY__WEBP=50
      #- PICTRS__MEDIA__ANIMATION__QUALITY=50
    volumes:
      - ./volumes/pictrs:/mnt:Z
    restart: always
    logging: *default-logging

  postgres:
    image: docker.io/postgres:16-alpine
    hostname: postgres
    volumes:
      - ./volumes/postgres:/var/lib/postgresql/data:Z
      #- ./customPostgresql.conf:/etc/postgresql.conf:Z
    restart: always
    #command: postgres -c config_file=/etc/postgresql.conf
    shm_size: 256M
    logging: *default-logging
    environment:
      - POSTGRES_PASSWORD=password
      - POSTGRES_USER=lemmy
      - POSTGRES_DB=lemmy
    networks:
      - database
  postfix:
    image: docker.io/mwader/postfix-relay
    restart: "always"
    logging: *default-logging

  #pictrs-safety:
  #  image: ghcr.io/db0/pictrs-safety:v1.2.2
  #  hostname: pictrs-safety
  #  environment:
  #  ports:
  #    - "14051:14051"
  #  user: 991:991
  #  restart: always
  #  logging: *default-logging
  #  depends_on:
  #    - pictrs
networks:
  default:
    name: traefik_access
    external: true
  database:
9
 
 

It seems I can't edit communities created by others in our instance.

10
 
 

Good morning and happy Sunday to everyone. I would like to ask you for advice on how to force publication on a Lemmy community when from any federated social network (Mastodon or Friendica) I mention both a Lemmy community and multiple Activitypub groups (gup.pe groups or Friendica groups).

In fact, at the moment it seems to me that mentioning the Lemmy community before the others is not enough to force publication on Lemmy.

11
 
 

Let's say I'm curious about a topic and I want to find a community dedicated to it. I want to search all instances for a community by that name. Is there a feature that allows it?

12
 
 

I was wondering if there were systems in place for users to report mods who are just ignoring the code of conduct and just abusing their power of moderator as a whole?

I've seen that we could get in touch via Mastodon, but I don't have an account for that unfortunately and I was curious to know if there were other ways

13
 
 

I know this has been an issue in the past, but it seems to have reared its ugly head again. Sorting posts by Hot (for my subscriptions) I get almost the same results as sorting by New.

I'll use other sorts as a workaround, but I usually like the hot sort.

Anyone else noticing this?

14
 
 

Say a user from Instance B commented on a post on Instance A, and a user on Instance A saw it. If the user on Instance A were to report it, would that report be seen by the admin(s) of Instance B, or would it only be visible by the admin(s) of Instance A?

15
 
 

Context

As the issue is closed, the feature should be around, and it seems like it is there based on the commit. But if yes, how do we use it?

16
 
 

Blocked users see content and interact with users that have blocked them which creates a potentially negative isolation. The approach of allowing blocked users to interact assumes all users have amenable intentions. It ultimately discourages eccentrics and creative individuals in favor of the lowest common denominator and mob avalanche behaviors. Blocking such user elements does nothing to ameliorate the problem. The persistence of said interactions is a slight negative bias advantage against positive well intentioned individuals. This negative bias places the burden of finding balance on the end user in potentially daily interactions. While the magnitude of the issue may be small, it still has a net negative impact on the lives of users and their interactions on Lemmy. Is this a solvable problem and one that is in the cards soon?

Likewise, when a user deletes a post, that post remains visible in their profile. Perhaps an interaction was abusive or some misunderstanding lead to a mob avalanche of negativity. The persistence of such a message in any form is an emotional tax on the person forced to view it.

While these issues may seem trivial to some people, there are users seeking social interaction at various states of mental health, life circumstances, and disabilities. These small elements of Lemmy may have a disproportionately negative impact on the lives of such individuals.

I bring up these issues as someone physically disabled and trapped in a situation of social isolation where these elements have become more of a concern with time and apparent shifting demographics on Lemmy.

17
 
 

A friend is joining Lemmy and I want to give them my subscriptions so they see a lot of content. How do I send these?

18
 
 

How do I see all posts in all communities on a server?

19
 
 

Solution

As was pointed out by @SatyrSack@feddit.org ^[1]^, this feature was added in this pull request. It appears that the custom thumbnail field is only relevant for posts that share a URL: The "Thumbnail URL" field is used to specify a custom thumbnail to be used in place of what would've been automatically generated by the provided URL ^[2]^.

Original Post

I thought it would be for adding a custom thumbnail that appears for the post in the feed, but then that seems to be a duplicate of adding an image. At any rate, I tried adding an image link to it, and no image showed up for the post. So I'm not entirely sure what it's actually for.

EDIT (2024-11-30T22:22): Perhaps it's for the pre-expanded thumbnail for a post if it has an image? Does that mean that it only works if you have an image specified? Can it be used to override the thumbnail that's generated from a shared article? Does it work for a text post?

References

  1. @SatyrSack@feddit.org [To: "When creating a post, how does the "Thumbnail URL" option work exactly?". "Kalcifer" (@Kalcifer@sh.itjust.works). sh.itjust.works. Published: 2024-11-30T22:24:10Z. Accessed: 2024-12-02T07:06Z. https://sh.itjust.works/post/28843300]. Feddit.org. Published: 2024-12-01T23:37:14Z. https://feddit.org/comment/3413077.
  2. "crates/api_crud/src/post/create.rs". LemmyNet/Lemmy. GitHub. Published: 2024-12-01T01:14:07.000Z. Commit: 5085d1c. Accessed: 2024-12-02T06:40Z. https://github.com/LemmyNet/lemmy/blob/e49d346535f0769b85ad0fa4b0baabfbdba0deff/crates/api_crud/src/post/create.rs.
    • L91-L99
      // Only generate the thumbnail if there's no custom thumbnail provided,
      // otherwise it will save it in pictrs
      let generate_thumbnail = custom_thumbnail.is_none();
      
      // Fetch post links and pictrs cached image
      let metadata = fetch_link_metadata_opt(url.as_ref(), generate_thumbnail, &context).await;
      let url = proxy_image_link_opt_apub(url, &context).await?;
      let thumbnail_url = proxy_image_link_opt_apub(custom_thumbnail, &context)
        .await?
        .map(Into::into)
        .or(metadata.thumbnail);
      
      • L93: A check is done for whether a custom thumbnail URL was provided.
      • L96: If it wasn't, then one will be generated from the shared URL.
      • L98: If a custom thumbnail URL was provided, it will be fetched from pictrs.
      • L99: If a custom thumbnail was not provided, fallback to the generated thumbnail.
20
 
 

I'm trying to install this theme on my instance, installed using docker. I've added

volumes: - ./volumes/lemmy-ui/extra_themes:/app/extra_themes

to the docker-compose.yml so I could see the extra_themes folder. I've tried every combination of making folders, standalone .css, .scss in extra_themes, but I can't seem to get the theme to show up. Any help would be greatly appreciated!

21
 
 

Can my humble, single-user instance handle it? Are there any settings I need to be careful about? Should I just backup my server and wing it?

22
 
 

Hi,

I have an old lemmy, collapse.cat, and I'd like to upgrade it to a more new version (if possible, the current version).

In the ansible repo UPGRADING.md I can see only info from 0.18.3

Where can I have the upgrading notes from 0.16.6?

23
 
 

Hi,

I am setting up a lemmy instance for a small private group. They are not very technically literate and I don't want to have to explain the concept of joining the right communities as part of the onboarding process.

So I want to pre-load all the right default communities to each user when they create an account. Is there a way to accomplish this ?

thanks !

24
 
 

EDIT: Looks like this is resolved now. For future reference, I had checked !support@lemmy.world, but I didn't think to check the announcements community, !lemmyworld@lemmy.world. I'll try to remember to check that space next time before posting. Thanks for chiming in, everyone!

ORIGINAL ISSUE:

I've noticed the last two game day threads on !caps@lemmy.world have not federated from my home instance (.ml) to either of the remote instances I've checked so far (https://lemmy.world/c/caps and https://lemm.ee/c/caps@lemmy.world).

The .ml posts' URLs are https://lemmy.ml/post/22823350 (from two days ago) and https://lemmy.ml/post/22885345 (from less than an hour ago).

The fact it's affecting multiple remote instances suggests that maybe there's some issue specific to .ml.

Searching recent support posts, I came across this federation health checker site, which indeed shows a spike in federation time from .ml to .world and lemm.ee, but it doesn't explain the cause.

Does anyone know why this is happening? Also, will the content eventually catch up on those remote instances or is it lost to the sands of time?

Depending on the answers to these questions, I might need to start posting from one of my alt accounts on another instance.

Thanks in advance.

25
 
 

Hi,

Just booted up lemmy-ui instance for the first time

It asks for "Set Up Site Administrator"

But as you can see when I press signup, nothing really happens

If I try to login with that account it says "Toastify is awesome!"

When I check the logs I get

root@storage:~# docker ps
CONTAINER ID   IMAGE                                   COMMAND                  CREATED          STATUS                    PORTS                NAMES
888bfbdd1e18   dessalines/lemmy-ui:0.19.7              "docker-entrypoint.s…"   21 minutes ago   Up 20 minutes (healthy)   1234/tcp             lemmy-lemmy-ui-1
f60bba3c14ae   dessalines/lemmy:0.19.7                 "lemmy_server"           21 minutes ago   Up 20 minutes             8536/tcp             lemmy-lemmy-1
2669e16088ca   pgautoupgrade/pgautoupgrade:17-alpine   "/usr/local/bin/dock…"   21 minutes ago   Up 20 minutes (healthy)   5432/tcp             lemmy-postgres-1
f8bf46b02c08   mwader/postfix-relay                    "/root/run"              21 minutes ago   Up 20 minutes             25/tcp               lemmy-postfix-1
de4ad69c761e   asonix/pictrs:0.5.16                    "/sbin/tini -- /usr/…"   21 minutes ago   Up 20 minutes             6669/tcp, 8080/tcp   lemmy-pictrs-1
root@storage:~# docker logs lemmy-lemmy-1
Lemmy v0.19.7
Federation enabled, host is lemmy.example.ca
Starting HTTP server at 0.0.0.0:8536
root@storage:~# docker logs lemmy-lemmy-ui-1
Lemmy-ui v0.19.7 started listening on http://0.0.0.0:1234/
31 translation imports verified.
93 date-fns imports verified.
4 highlight.js imports verified. (Only testing 4 samples.)

Not sure where to go from there ?!

view more: next ›