https://github.com/andrewbanchich/shreddit

I opened terminal with my comment.csv put in the desktop

  1. I did cargo install shreddit

  2. Then made the reddit app credentials

  3. Then did shreddit --username YouRedditUsername --password YourSuperSecretPassword123 --client-id clientidreplace --client-secret clientsecretreplace --gdpr-export-dir ~/Desktop/comments.csv

With the relevant information replaced with my own. But after I click enter nothing more happens like a message saying deleting or anything like that. Just cursor blinking. So do I just leave it alone or did something go wrong?

Update : Using the shreddit-linux file ended up working for me. On Linux to run it I had to right click it then go to properties and then allow executable. Then to run it in terminal I had to go to the directory shreddit-linux was in and type ./shreddit-linux.

Also, you have to make sure you extract all the GDPR files together. If it is missing one it needs you get an error, so after some error messages extracting everything fixed it for me and got it to start deleting.

  • e_t_@kbin.pithyphrase.net
    link
    fedilink
    arrow-up
    1
    ·
    1 year ago

    When I used shreddit, I pointed --gdpr-export-dir to the directory where I unpacked the archive from Reddit, not directly to comment.csv.

    When the command is working, it’s pretty verbose.

    • ImaginaryFox@kbin.socialOP
      link
      fedilink
      arrow-up
      1
      ·
      1 year ago

      Still not getting anything, so tried it with the --gdpr-export-dir part removed for just

      shreddit --username YouRedditUsername --password YourSuperSecretPassword123 --client-id clientidreplace --client-secret clientsecretreplace

      Same blinking cursor. When I do just put in the command like shreddit --version I do get back shreddit 0.9.1 so seems to be properly installed.

      I guess I might try again later.

      • e_t_@kbin.pithyphrase.net
        link
        fedilink
        arrow-up
        1
        ·
        1 year ago

        You could run it under strace, e.g. strace -f -o shreddit.log shreddit

        That’ll show you the system calls it’s making. You might be able to tell if it’s waiting on a network request or local I/O. You can find guides online how to read strace output.

  • explodingkitchen@kbin.social
    link
    fedilink
    arrow-up
    1
    ·
    1 year ago

    Works for me on Ubuntu. Instead of using command-line arguments, I put a shreddit.env file in the same directory where my GDPR files were extracted, then did a cd to that directory before running shreddit. I’ve got single quotes around the passwords, etc. in the shreddit.env file.

    • ImaginaryFox@kbin.socialOP
      link
      fedilink
      arrow-up
      1
      ·
      1 year ago

      Could you do a step by step guide on set up? I’m clueless so don’t even know where the shreddit.env file is after installing through cargo. Had tried the manual method too of downloading the Linux file on github.

      • explodingkitchen@kbin.social
        link
        fedilink
        arrow-up
        2
        ·
        edit-2
        1 year ago

        Okay, so it sounds like you’ve created the Reddit credentials. You also have shreddit installed and your $PATH variable changed, since ‘shreddit --version’ is giving you 0.9.1 instead of an error message.

        TBH, I don’t think installing shreddit via cargo creates a shreddit.env file. I just opened a new file in a text editor (I use Pluma), did a copy/paste of the body of the shreddit.env.example file, and then changed the fields to match my account info, client ID, etc.
        Then I created a new directory called cargo_shreddit to keep all the mess in one place. I extracted my GDPR files into cargo_shreddit, put my shreddit.env file in there too, changed to that directory, and used the command “shreddit”.

        My ISP connection can be flaky, so occasionally it would crap out on me with a panic error–sometimes after deleting 50 entries, sometimes after doing thousands. To deal with that, I made a backup copy of my original comments.csv file, then simply edited my comments.csv file as I went along, keeping the first line of the file (the one that says ‘id,permalink,date,ip,subreddit,gildings,link,parent,body,media’) but deleting the entries for any comments I’d already successfully done. It took several hours to do it all, but you should see a steady stream of messages while it’s happening to let you know which comments it’s working on.

        ETA: This is what my shreddit.env file looks like, with all the passwords, etc., changed to random values.

        SHREDDIT_USERNAME=‘explodingkitchen’
        SHREDDIT_PASSWORD=‘!hKL1ltVc7FbpOa4’
        SHREDDIT_CLIENT_ID=‘uj$6LWzilcGPD*3&’
        SHREDDIT_CLIENT_SECRET=‘z5&L%cC1Wj#Gid^3QUYMuqv2d#EH#’
        SHREDDIT_DRY_RUN=false
        SHREDDIT_USER_AGENT=‘ShredditRustClient’
        SHREDDIT_EDIT_ONLY=false
        SHREDDIT_GDPR_EXPORT_DIR=‘/home/explodingkitchen/cargo_shreddit’

        second ETA: And in case you’re wondering whether the problem is with your Reddit credentials, I very much doubt it. I just tried screwing up mine and it gives a distinct error message instead of the blinking cursor of WTF. When I restored them, shreddit worked again, so it’s also not that Reddit’s shut something down.

        • ImaginaryFox@kbin.socialOP
          link
          fedilink
          arrow-up
          1
          ·
          1 year ago

          I think I’m understanding it. So I should use txt to make the env file and put it in a folder with my extracted csv file. What command should I use to run the env file? That’s something I haven’t encountered before on Linux.

            • ImaginaryFox@kbin.socialOP
              link
              fedilink
              arrow-up
              1
              ·
              1 year ago

              So just run like the usual command? like

              shreddit --username YouRedditUsername --password YourSuperSecretPassword123 --client-id clientidreplace --client-secret clientsecretreplace

              • explodingkitchen@kbin.social
                link
                fedilink
                arrow-up
                2
                ·
                1 year ago

                You don’t have to specify any arguments you’ve put in the shreddit.env file. Or anything with defaults you’re okay with. So you can just type “shreddit” and hit enter. Anything you put on the command line will probably override what’s in the shreddit.env file.

    • abff08f4813c@kbin.social
      link
      fedilink
      arrow-up
      1
      ·
      1 year ago

      I tried this back when it had the bug of not exporting your data but overwritting it, so I lost some content this way.

      PDS really does need to be upgraded to support using the GDPR archive, but that’s probably a fairly big task to handle.

    • ImaginaryFox@kbin.socialOP
      link
      fedilink
      arrow-up
      1
      ·
      1 year ago

      I used that one to delete my comments and submissions, but when I did a search of my username there were some that it wasn’t able to delete. Turns that for those the GDPR data reddit sends you needs to be used to go through and delete those comments individually. Haven’t had luck setting up shreddit so been going through the permalink provided in the data request and deleting it one by one.

      It’s mixed in with data that was successfully deleted, so in 30 days I’ll request another one for a more cleaned up list that only contains the undeleted material.

  • megane-kun@lemm.ee
    link
    fedilink
    English
    arrow-up
    0
    ·
    edit-2
    1 year ago

    It might take a while before anything gets outputted. I think it might also be good if you try the --dry-run option first just so that you’d know what to expect.

    Here’s a sample output from one of my runs. It’s already been scoured clean, so there’s nothing to do.

    sample shreddit output for an account with no posts and comments

    I usually just run it through a bash script with the relevant line being:

    ./shreddit-linux -u ${uname} -p ${pword} $dryrun > "logs/${uname}_${tsstr}.log"
    

    Where ${uname} and ${pword} are my username and password respectively, and $dryrun is either --dryrun or the empty string.

    The output is then saved to a log file with the name pattern username_timestamp.

    Also, I noticed that you’re using the gpdr-export option. I think there’s some wonkiness regarding that? I am not sure though. I still recommend using the --dryrun option first just to see what’s up (without actually doing any changes to your account.


    EDIT:

    I forgot to clarify, shreddit-linux is what I named the executable file I got from the repository.

    • ImaginaryFox@kbin.socialOP
      link
      fedilink
      arrow-up
      0
      ·
      1 year ago

      I tried the dry run but didn’t get anything back after running command. I must just have to go the tedious route of deleting comments manually over the year from time to time.

      • megane-kun@lemm.ee
        link
        fedilink
        arrow-up
        1
        ·
        1 year ago

        Before you give up on it, you might want to check on your shreddit.env file. The command line parameters override the stuff in there, but it might be a good idea to check anyways.

        Best of luck!