~duncan-bayne/halp

Perl scripts to run my personal Gemlog and my professional Website
Install CPAN modules without testing if in CI
Email me when the build fails
Install additional missing dependencies

refs

master
browse  log 

clone

read-only
https://git.sr.ht/~duncan-bayne/halp
read/write
git@git.sr.ht:~duncan-bayne/halp

You can also use your local clone with git send-email.

#halp

Halp mascot

Halp is a simple templating Web and Gemini static generator, written in Perl 5.

It was created to scratch an itch: to generate both my personal Gemini capsule and my professional Web site using the same basic mechanism.

builds.sr.ht status

#prerequisites

  1. Perl 5 (5.10 or later).
  2. The following CPAN modules:
    1. Clone
    2. Data::Dump
    3. File::Copy::Recursive
    4. File::Slurp
    5. HTML::HTML5::ToText
    6. Mojolicious
    7. Test::Exception
    8. Text::Template
    9. Try::Tiny
    10. XML::Atom::SimpleFeed

Note that scripts/cpan-dependencies.sh will set these up for you, assuming you have CPAN installed.

#tests

$ prove -rv t

#license

halp is licensed under the GNU Affero General Public License 3.0.

#credits

#FAQ

#1. why Perl?

I have several goals for Halp:

  1. Long-lived. Ideally, it'll last me for at least a decade, maybe more.
  2. Highly portable. I don't want to be tied to the "big three" of macOS, GNU/Linux, and Windows - Plan 9 is still on my radar for the future.
  3. Safe. This means, e.g., not having to roll my own crypto or template libraries.
  4. Not a Google product.

This led me to a pretty short shortlist:

  1. The Plan 9 dialect of C.
  2. rc shell.
  3. Perl 5.

Having spent a few years as a professional C coder I'm reluctant to reach for it for any text-heavy task. rc is okay but I don't find it terribly easy to read - I struggled a bit with Werc. That left ... Perl!

#2. what on earth is that mascot?

It's "Purlapin", a mascot created by Stable Diffusion and named by Chat GPT. It's just too surreal not to use even though I have no idea what it is.