I'm finding more and more software I run which is not available or outdated even in distros such as Nix and Arch which have lots of package and very strong inertia.
Writing arch packages looks reasonable, but I was thinking it's a bit of a waste- many software I'm looking at already provides binaries which can just be dropped to
So I was thinking about writing a kind of package manager where you write a simple manifest like this:
And this software locates the latest GitHub release for that repository, gets the right binary, and unpacks it to some pre-configured path.
I'm aware that
If this system was able to fetch manifests via URL, then it would be very simple to package your own stuff.
Appimages could be added to this too.
Brew is similar, but given that it can install anything, it requires a fixed path for binaries, which means it needs root or dirty tricks.
I think this is a too-obvious idea. I know that it has some serious limitations... but I'm kinda surprised this doesn't already exist?
Writing arch packages looks reasonable, but I was thinking it's a bit of a waste- many software I'm looking at already provides binaries which can just be dropped to
~/.local/bin
and you are done. This is typical of Go software, but increasingly more stuff I use follows this trend.So I was thinking about writing a kind of package manager where you write a simple manifest like this:
Code:
package: talosctl
kind: github-release
repo: siderolabs/talos
archive: talosctl-{os}-{arch}
And this software locates the latest GitHub release for that repository, gets the right binary, and unpacks it to some pre-configured path.
I'm aware that
talosctl
is the most favorable case (the binary is right there, it's not packaged into another archive), but I think you could get a ton of software to install with those simple manifests, and keep it very well updated- with less effort than most other packaging systems I'm aware of.If this system was able to fetch manifests via URL, then it would be very simple to package your own stuff.
Appimages could be added to this too.
Brew is similar, but given that it can install anything, it requires a fixed path for binaries, which means it needs root or dirty tricks.
I think this is a too-obvious idea. I know that it has some serious limitations... but I'm kinda surprised this doesn't already exist?