I've created a minimal fetch script on my Arch Linux system. It's written in bash and has been successfully tested on Arch, Debian & Fedora. It works out of the box on Arch, but you do need to change the package count command to adapt it to work with different package managers other than pacman. Also make sure that you have lsb-release installed.
I have to say: while it is a fun project (I used to maintain my own fetch too), what most people don't realise is that neofetch is quite customisable to the point that I replaced my custom fetch with neofetch. If you're doing it to learn, great! Keep going! If you're doing it for functional purposes only, I'd recommend just customising neofetch and keeping a neofetch config around i your dotfiles or something. Still really cool though. For people interested in configuring neofetch: https://www.youtube.com/watch?v=Ov3yi-9jbFI
Also, what are you using as a shell prompt: PS1, Starship or something else?
While I've nothing against neofetch, I prefer to use my own fetch because it needs little to no maintenance and has everything I need. I actually think that maintaining a neofetch config might actually be more work in the long run. Anyway.. I'm using plain old Bash for my shell prompt. I've just customized it using nerd fonts (see one of my other comments on this post for the command)....
Fair enough. Whatever floats your boat, I guess. And I'm sure your script is faster because it doesn't deal with nearly as many of the useless complexities of neofetch.