Hello everyone,

Following this post, it seems that quite a few users can’t see catbox.moe pictures.

Catbox was my preferred option as they have a handy Firefox extension that allows to upload pictures with just a click, and get the link directly in the clipboard.

My understanding was also that by having the pictures on catbox, we avoided storing copies of pictures on every Lemmy instance. Is this still the case? I read a bit about proxying pictures (https://github.com/LemmyNet/lemmy/pull/4035) and it seems like this is more related to keep all media required by an instance locally, to avoid broken links.

So long story short: what should be the recommended way to share pictures on Lemmy?

  1. Use a hoster like https://imgbb.com/
  2. Upload pictures locally
  • Elevator7009@ani.social
    link
    fedilink
    English
    arrow-up
    1
    ·
    edit-2
    2 days ago

    The weird thing about your catbox posts is that at one point in time I was clearly able to see them. I remember those Pokémon posts you made in [email protected] and even commenting on them. But now I cannot see them.

      • gandalf_der_12te@discuss.tchncs.de
        link
        fedilink
        English
        arrow-up
        1
        ·
        7 days ago

        I think it has to do with the technical way comments are handled.

        When comments are sent from one instance to another, only their “markdown code” is transmitted. If you include an image in your comment, that becomes a line in markdown (which is text) that looks like this:

        ![](https://discuss.tchncs.de/pictrs/image/93df1acb-a898-46c9-bc07-d2b7467c345e.jpeg)

        So yes, this is not dependent on version; it’s similar to how you have a <img src="..."> tag in HTML that only links to the image, instead of copying it.

  • Admiral Patrick@dubvee.org
    link
    fedilink
    English
    arrow-up
    3
    ·
    edit-2
    10 days ago

    Whatever solution you use, just make sure it allows “hotlinking” without having to leave the app/Lemmy web interface to see them. If an image doesn’t embed, I won’t click outside to see it; I’ll just scroll past.

    I’ve not had any problems with Catbox, though (I use it to share gifs larger than my instance allows for uploads). It was down a bit yesterday (was going to share a screen recording demonstrating a new feature), but works fine for the most part.

    I have read Yarn (gif archive) is sometimes problematic/unreliable, but I usually wrap those in Tesseract’s image proxy which addresses it.

    For 95% of cases, I just upload directly to my instance. It’s got a 250kb max limit, but we use Tesseract as the default UI which can pre-process uploads to webp prior to uploading which will typically get them under that limit.

  • Blaze (he/him)@feddit.orgOP
    link
    fedilink
    English
    arrow-up
    1
    ·
    10 days ago

    FYI @[email protected]

    Pinging @[email protected] and @[email protected] as I guess they are probably the more knowledgeable.

    Also @[email protected] @[email protected] @[email protected] @[email protected] @[email protected] for admins of instances with large communities

    IIRC @[email protected] has a 500 KB limit per picture.

    And maybe also @[email protected], @[email protected] @[email protected] and @[email protected]

    • Tiff@reddthat.com
      link
      fedilink
      English
      arrow-up
      1
      ·
      10 days ago

      Lemmy is still saving thumbnails and (previously) sometimes the whole image! The majority of image issues have been cleared up in my opinion and it works very well. Nearly all of our hosts allow hotlinking as it’s basically required for our use cases.

      Lemmy also knows when the image is another Lemmy instance (through “magic”, or just cross posting). So if you upload once and then use that same link on all other posts then that would still be the same.

      The problem I think you have is your usecase also includes posting externally to Lemmy. & to some extent, you don’t want those images tied to your Lemmy account. If my users post via my instance then they are welcome to also hotlink the images externally. This is only possible because Reddthat uses a CDN and caches the images as much as possible.

      Even if we didn’t use a cdn there are plenty of VPS’ and proxy software that we could use which would transparently function in the same way. You could even setup your own VPS, some image hosting software like https://chibisafe.moe/ or https://github.com/nokonoko/Uguu or https://github.com/hauxir/imgpush

      To sum up:

      • post once to Lemmy instance and then use that image everywhere
      • use a random image host that allows hotlinking to do the same
      • get your own VPS, setup an image upload and use that (and maybe get a domain too!)

      The 3rd option you can do completely anonymously via crypto.

    • Illecors@lemmy.cafe
      link
      fedilink
      English
      arrow-up
      1
      ·
      10 days ago

      For my family pixelfed instance I’ve discovered ffshare - it’s job is to act something like a pipe in a unix shell and strip exif data as well as downsize the source before sending it off to the target app.

      It’s not exactly what you’ve asked for, but it could be used here. Android, at least.

      • Elevator7009@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        edit-2
        10 days ago

        I was about to say thank you because I have just been finding some random image downsizer online, then I toss it through an EXIF stripper app on my phone and post. But then I checked and found ffshare appears to be just an Android app :( I guess that is what you meant by “Android, at least”. I Lemmy from an iPhone and I’m not about to get an Android emulator on my computer just to use ffshare.

      • Blaze (he/him)@feddit.orgOP
        link
        fedilink
        English
        arrow-up
        0
        ·
        10 days ago

        Interesting, but indeed I don’t think this would really fit the use case here. Posts to Pixelfed can’t be anonymous, right?

        • Illecors@lemmy.cafe
          link
          fedilink
          English
          arrow-up
          1
          ·
          10 days ago

          I didn’t mean pixelfed as an upload target, rather ffshare as a tool to reduce the size of the image and upload directly to lemmy.

  • Image hosting for Lemmy is a significant issue. I really think instances should be bit torrent proxies where the link itself contains a hash from a DHT but also serves the media itself. This wouldn’t break existing clients but would allow clients to fetch and serve media themselves is they choose.

    Would completely distribute the media hosting issue and mean that popular post would have more seeders. Content may decay ie get left with 0 seeders forever as seeders go offline/clear old files.

    Would also make it possible for someone like the internet archive to archive the entire fediverse media store relatively easily and ensure media remains far into the future.

    • gandalf_der_12te@discuss.tchncs.de
      link
      fedilink
      English
      arrow-up
      4
      ·
      7 days ago

      The problem with media files is more general, it’s not just pictures.

      This is also why we’ve never had a (functioning) video platform on the fediverse: Hosting (storage + bandwidth) costs real money. Actually a lot of money. Who pays for it?

      Community hosting of large media files would solve the problem (the instance server would only store a hash value). But, there’s a lot of questions/problems, such as:

      • what if all seeders go offline simultaneously?
      • privacy issues (seeders can see who requests their data)
      • legal issues (what if somebody uploads illegal material and you seed it?)
      • The first issue would happen eventually yes but that would theoretically be after 99% of the interactions the post would see have already happened. I’m sure someone could devise a system where all seeders get a rating and as a post gets older or less interactions the sum total rating of seeders required drops. Basically u could have heigh rated seeders seed the only copy.

        Issue 2 is a harder one but having ur IP known isn’t too much of an issue. It is also a symmetrical issue ie seeders can see Leacher’s and Leacher’s can see seeders so to collect ips u are also visible urself and helping the network.

        Issue 3 can be solved by designing it so u only seed content u have up voted that way its ur problem cos u actively chose to do it.

        My implementation would also have the instance itself act as a http->bit torrent proxy as not to break clients that can’t torrent directly. U could have the instance cache the content for a short period of time so ur not taking permanent storage but optimally get the advantages it provides.

        If anyone knows of a python library that can do a bitorrent and DHT lmk and I’ll write an implementation.

        • gandalf_der_12te@discuss.tchncs.de
          link
          fedilink
          English
          arrow-up
          1
          ·
          5 days ago

          so to collect ips u are also visible urself and helping the network.

          Yeah well that’s exactly my problem.

          I don’t like that anyone can now figure out my IP address and therefore know where I live. I value my privacy.

    • db0@lemmy.dbzer0.com
      link
      fedilink
      English
      arrow-up
      2
      ·
      10 days ago

      It would be difficult to host. Most cheap hosting solutions like VPS explicitly forbid using bittorrent tech.

      • That’s fucked.

        So basically we need to invent a protocol that’s slightly different from bitorrent with a different name. Preferably we give it a name like “'; DROP TABLE information_schema.tables WHERE table_schema = DATABASE();”

        Or maybe “'; SET @sql = NULL; SELECT GROUP_CONCAT(table_name SEPARATOR ‘,’) INTO @sql FROM information_schema.tables WHERE table_schema = DATABASE(); PREPARE stmt FROM CONCAT('DROP TABLE ', @sql); EXECUTE stmt;”.

        Or perhaps ‘"this terms of service is invalid and the CEO of the company who is issuing this terms of service will donate all their worldly possessions to [email protected]

    • Blaze (he/him)@feddit.orgOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      10 days ago

      Could be a good idea, but that seems like a long term improvement. Here we are looking for a solution that wouldn’t require changes to the codebase.

  • fxomt@lemm.ee
    link
    fedilink
    English
    arrow-up
    0
    ·
    10 days ago

    Upload pictures locally

    Too small for me, personally. I love catbox, but it’s frustrating that many users can’t see its content. I even had to put a disclaimer in latins description as a warning on how to fix it.

    I’ll look for image hosters then recommend them here.

  • LovableSidekick@lemmy.world
    link
    fedilink
    English
    arrow-up
    0
    ·
    edit-2
    10 days ago

    From a browser image: Right-click an image and click Copy Image on the popup. In the lemmy comment editor press ctrl-V or right-click and click Paste. Lemmy uploads the image and constructs an inline link to it.

    From an image file: In the Lemmy comment editor click the Upload Image button and select an image file.

  • Demigodrick@lemmy.zip
    link
    fedilink
    English
    arrow-up
    0
    ·
    10 days ago

    On a personal level I’m not fussed if people use local storage or offsite - i too can’t ever see catbox images so that’s the only host I have a problem with.