Unable to load image

Perl script to grab all Marsey's off of this website and make it Pleroma friendly

use strict;
use warnings;
use experimental 'smartmatch';

use Data::Dumper;
use JSON::XS;
use LWP::UserAgent;
use HTTP::Request;
my $json = JSON::XS->new->utf8->allow_nonref;
my $request = HTTP::Request->new(GET => 'https://rdrama.net/marsey_list.json');
my $ua = LWP::UserAgent->new;
$ua->agent("Mozillacels stay losing");

my $response = $ua->request($request);
die "Failed to fetch" unless defined $response;

sub contents_to_file($$)
{
        my ($filename, $content) = @_;
        open(my $fh, '>', $filename) or die "Couldn't open file $filename: $!";
        print $fh $$content;
        close $fh;
}

# Get emojis
my $emojos = $json->decode($response->content);
my %pack = (
        'files' => {},
        # empty?
        pack => {},
        files_count => 0,
);

# Case sensitive: 'Marsey', 'Misc', 'Wojak', 'Classic', 'Tay', 'Wolf', 'Marsey Alphabet', 'Platy', 'Marsey Flags', 'Rage', 'Flags', 'Sets'
my @categories = ('Marsey');

foreach my $emojo (@{$emojos})
{
        if ($emojo->{class} ~~ @categories)
        {
                $pack{'files'}->{$emojo->{name}} = $emojo->{name} . '.webp';
        }
}

$pack{files_count} = keys %{$pack{files}};

my $output = $json->encode(\%pack);
# Write content to file
contents_to_file 'pack.json', \$output;

I wrote it because I setup an Apache Reverse Proxy where I created a "fake" emoji-pack, where all the requests where Pleroma expects them just redirect to /e/{emojiname}.webp here :#marsey57:

Just felt like sharing, incase any of you want to read Perl

It allows me to steal emojis here without manually submitting them all like I was before.

22
Jump in the discussion.

No email address required.

Is there any market for perl devs? I've had to learn it to maintain ancient backend scripts and don't mind it that much but for some reason it seems to make :zoomertears:s absolutely assblasted. Deciphering old boomer runes nobody else wants to touch doesn't seem like the worst job in the world to me.

Jump in the discussion.

No email address required.

There still are in some places but you'll probably be maintaining an ancient backend nobody cares about while all the new devs are using le NodeJS angular kubernetes React.js ULTRA Cloud service AWS biboc race Rust libc coreutils Microsoft AWS Linux

Jump in the discussion.

No email address required.

Link copied to clipboard
Action successful!
Error, please refresh the page and try again.