The now banned Padded Person of LemmyNSFW made a SauceNaoBot for Lemmy: https://lemmynsfw.com/post/97671
https://github.com/LemmySauceNao/LemmySauceNaoBot

No idea if it’ll be maintained anymore, but would be QoL upgrade since it’d take the burden off the user to provide sauce (and not everyone does).

Since this is not my code, I am wondering if this should/could be implemented on Burggit by admins, or by a user?

  • dejiko@burggit.moe
    link
    fedilink
    arrow-up
    2
    ·
    1 year ago

    I’ve thought about writing something like this. In theory it’s not super complicated to do… If it doesn’t require admin access maybe there’s some way I could debug the issue that is going on. I’m pretty confident in being able to figure it out even though I’m not particularly familiar with Lemmy API yet.

    • Burger@burggit.moe
      link
      fedilink
      arrow-up
      3
      ·
      edit-2
      1 year ago

      I’d suggest just writing it from scratch using something like this, if you know typescript: https://github.com/SleeplessOne1917/lemmy-bot . At least there’s reasonably more staying power behind it. The source code for the lemmynsfw bot isn’t even using the semi-official API library, Padded Person wrote their own because the semi-official one is in an “Incomplete state.”

      If this was just nodejs, I’d take a stab at it. But I spent way too much time fighting errors in typescript just to get their list linked instances function to spit out json for use with https://instances.burggit.moe (which isn’t even accurate because it doesn’t take into account defederations)

      • dejiko@burggit.moe
        link
        fedilink
        arrow-up
        3
        ·
        1 year ago

        I agree that I should definitely just write something from scratch, but if we could get this working as a stop-gap solution, it would be useful in the interim before we’re able to develop a nicer and cleaner solution. I’ll take a look at what’s out there. Having to write my own bindings is not too much of a concern as long as the API isn’t batshit insane. (I know ActivityPub stuff tends to use JSON-LD but that’s not too bad.)

        • Burger@burggit.moe
          link
          fedilink
          arrow-up
          3
          ·
          1 year ago

          Alrighty then have at it. If hosting it is a concern for you, I’ll happily run it on my server so that everyone can use it. Since we already have the burden of hosting the site anyways. Kill two birds with one stone sorta thing. 🙂

        • talozazz@burggit.moe
          link
          fedilink
          arrow-up
          2
          ·
          1 year ago

          Good luck!

          I reckon if you put together a working concept/skeleton, others would probably be happy to help out or point you in the right direction. Much easier to work together on a project when someone has put in the leg work to get something together.

      • dejiko@burggit.moe
        link
        fedilink
        arrow-up
        2
        ·
        1 year ago

        I got it working (and ran it on my own account against my own posts.) I meant to do it last weekend, but I got caught up in some other open source work. The main issues for me were some dotnet 6.0 compatibility issues (i ran it on Linux): I had to adjust project references, move the saucenao bot code into a subdirectory to avoid .net assembly issues, and i made it so the PersonId of the bot is no longer hardcoded. I’ll make a fork of the original bot and post it somewhere. It’ll run with the stock dotnet command. We can then look into writing something less awful…

          • dejiko@burggit.moe
            link
            fedilink
            arrow-up
            1
            ·
            1 year ago

            Busier weekend than anticipated, but I didn’t want to push it till next one, so here it is, pretty unpolished. https://gitgud.io/chokora/lemmysaucenao

            I imagine the fastest way to throw it onto a server would be to dotnet publish it as a self-contained bin. Could also be put into a container but it has that weird thing where all of the inputs and outputs are files next to the executable still, which would make that annoying anyways.

            The general gist of the way it works seems to be that you can have it as a bot user, and communities can “opt-in” to it by adding the bot user as a moderator on their communities.

    • Disa@burggit.moeM
      link
      fedilink
      arrow-up
      3
      ·
      1 year ago

      You should be able to do this with just an account and the program, let us know if there’s anything you need from us. But you should be able to do everything as a normal user.