How to make Linux application (all in one fille) installer?
I am working on some Linux application. It is the right moment to start thinking about deployment. So my question is: How to create a one file installer like for example *.run or *.sh files that sometimes can be found in internet (for example nVidia drivers or Wolfram Mathematica CDF).
Usually you should not do that, just let distro maintainers to create package for your software, or do it yourself for few popular distros. Installing software via any means other than package manager is discouraged, since it makes hard to update software and avoid conflicts.
6 Answers 6
Just use makeself, it creates a shell script with an included archive and can run commands after extraction.
If you need only a self-extracting archive, you can use shar .
Create a package for each targeted distribution. «One file installer containing the bathtub and the kitchen sink, in case they aren’t installed already» is very bad manners. Perhaps this is relevant here.
Distributions have widely different policies on what to ship, configuration file standards, and how to package software. Better recruit some interested party knowledeable with the distribution, and have them take over the packaging and integrating into the distribution. That will reduce friction enormously.
Is it possible for example to detect compilers (or ask user for paths) when installing for example .deb or .rpm? if that is possible, that would indeed be a great solution.
.deb and .rpm install binaries, no compiler required. The respective .src.rpm (SRPM) contains the full configuration to build/install the package from source, there you can specify what you need to build. I’m not familiar with .deb, but AFAIU the repective source packages are similar. Or you could just ship a .tar.gz with installation instructions (perhaps add the autoconfiscation configuration, it is a bear to set up but a breeze to keep up to date later). Leave the istalling to the user.
Well, the thing is that in my project compiler is needed. I am creating a C++ math library that will be autmatically installed and tuned for choice between serial and OMP algorithms. I am doing this for my colleagues at work, and some of them use GCC, some Intel compiler, some Borland, some work on Windows using MSVCC etc. Some have i7 some have Opterons and so on. So libs should be compiled with their compiler, and tuned. Also some have Intel MKL, and others do not. Some of them wish to use it, and some not. So it is the only way to write somewhat interactive installer.
Linux AIO
We bring you some of the major Linux distributions (Ubuntu and flavors, Linux Mint, LMDE, Debian Live, Fedora) with different desktop environments on one ISO file that can be burnt on one DVD / DVD DL or USB 4GB+/8GB+ flash drive. Every one of them can be used as Live system, with no need of installation on hard drive, or can be eventually installed on computer for full system experience.
Features
- Easy to use
- Custom Linux AIO boot menu
- One ISO file with official derivatives of diferent Linux distributions
- ISO file with original and untouched Linux distributions
- Memory testing and hardware detection tools
Project Samples
Project Activity
Categories
Follow Linux AIO
Find influencers for your brand, monitor your campaigns, and generate more sales through smarter partnerships and stronger monitoring.
Upfluence is the only Influencer Marketing platform that enables brands and agencies worldwide to turn their own customers into sales-driving influencers. Upfluence platform is made to search influencers in any vertical, language, country on 7 different social media platforms; contact them at scale through an included CRM tool; manage several influencer marketing campaigns in parallel; manage automatically all administrative tasks and especially international influencer payouts; and analyze the KPIs of any campaigns or hashtags through social listening. The software is independent from the social media platforms which prevents it from any interrupting service. The company also provides managed services in 5 languages. Offices in NYC, Paris, Lyon (FR) and Lausanne (CH).