this post was submitted on 19 Dec 2025
-20 points (35.7% liked)
Selfhosted
60281 readers
655 users here now
A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.
Rules:
-
Be civil.
-
No spam.
-
Posts are to be related to self-hosting.
-
Don't duplicate the full text of your blog or readme if you're providing a link.
-
Submission headline should match the article title.
-
No trolling.
-
Promotion posts require active participation, with an account that is at least 30 days old. F/LOSS without a paywall has exceptions, with requirements. See the rules link for details.
Resources:
- selfh.st Newsletter and index of selfhosted software and apps
- awesome-selfhosted software
- awesome-sysadmin resources
- Self-Hosted Podcast from Jupiter Broadcasting
Any issues on the community? Report it using the report flag.
Questions? DM the mods!
founded 3 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Yes. Separate out each part out. You are currently publishing the equivalent of of a compiled binary. Split it up, and use a script to "compile" it back into the mega shell script.
It means that changes to each file can tracked (and audited) individually, you can conditionally compile bits in or out, and most usefully, you can write tests for the individual components.
Ok I'll work on it and share when I am done
You can still have that script, but put it on the releases page. Git works best with actual source code and it doesn't belong there. You should also add an extra script that generates one of those 'compiled' scripts to the git repo, so that people can do it themselves.