
Ask HN: What tool to use for building a Linux app installer? - tinktank
My company has a piece of software they want to demo to potential buyers by getting them to install the software on their machines.  The software we produce binary rewrites other applications (e.g. Apache webserver and Apache Kafka) so it involves pulling something off the web, reading the configuration of the machine it&#x27;s being installed on, getting some user input, creating some config files and copying some files.  We will go across mostly Ubuntu and CentOS&#x2F;Redhat machines.<p>I know the traditional ways of doing this are shell script or shar files.  Is there something more common and easier to use that is commonly used today (e.g. SNAP packages)? I&#x27;m looking for ease of use on our end, extensibility and flexibility and the ability to extend to multiple applications over time.  For various technical reasons, containers are a non-starter for us.
======
_frkl
Basically this is what configuration management does. So, why not use Ansible,
esp. ansible pull ( [https://docs.ansible.com/ansible/latest/cli/ansible-
pull.htm...](https://docs.ansible.com/ansible/latest/cli/ansible-pull.html) ).
You'd prepare an ansible playbook, and your users would pull that via git.
Should tick most of your boxes.

Incidentally, I'm currently working on a project/product to make that sort of
thing easier, esp. in terms of flexibility and easy of use (for both end users
and developers). It's not finished yet, but use-able. I haven't figured out
how I do licensing yet, but I'd need some beta testers with real problems
soon...

Anyway, have a look at Ansible pull first, maybe it does what you need it to
do. Ping me if you need some pointers. I also have a few scripts lying around
that make bootstrapping that type of things easier.

------
UK-Al05
.Deb .rpm packages?

------
elderbarry
Snaps with a reasonable rationale for it can be unconfined (they require the
user to acknowledge that with —classic on install). Think a config management
system, which needs to be able to read and write all over a traditional file
system. That would work for you, and be cross platform, but the snapcraft
community would need to be convinced that it’s not a Trojan horse vector.

