Installing Commercial Linux Programs


 
Thread Tools Search this Thread
Operating Systems Linux Ubuntu Installing Commercial Linux Programs
# 1  
Old 05-11-2011
Installing Commercial Linux Programs

I a writing a program which I would like to distribute commercially to Linux users. This question doesn't apply specifically to Ubuntu, but Ubuntu will be one of the Linux systems involved, and Ubuntu is one of the systems on which I have practiced installing. I have sufficient Linux experience to navigate around, write shell scripts, etc., but very little with installation, system administration, etc.

I wish to distribute this application as object files and then complete the linking to libraries on the client's PC. This will involve downloading the compiler, libraries, etc. onto the client's machine. I would like to automate the entire install process with a script. I am initially experimenting with Ubuntu and Fedora, but would like the installation program to work for most types of Linux.

I have written a shell script which does the installation once the compiler and libraries are installed, but know that I must include that in the installation script. It would be preferable to have an installation script that works accross all flavors of Linux, rather than needing a separate script for each type, although I could do the latter if it is the only way this will work.

My question is this: I really don't know how to go about creating an installation system. Should I write a shell script that calls Apt for Ubuntu, Yum for Fedora, etc. to get these libraries? Is there a package manager that works about the same way accross most Linux types? Should I download the compiler and libraries with wget or some other way? Is a shell script even the right way to write an installer, and if there is a better way, where might I learn how to do it? I am simply too inexperienced to know how I should be going at this.

Any advice would be a big help. Thanks.

Brandon
# 2  
Old 05-12-2011
If .deb and .rpm packages etc are the only way your application's available, you're definitely going to annoy somebody somewhere down the line. I've frequently seen commercial programs distributed for UNIX in the form of tarballs that dump things into /opt/mypackagename/... Any technically competent administrator can make that work one way or another.

From that base you can build more refined packages for popular distributions that Do The Right Thing for the distribution in question in terms of building your package, getting the dependencies right, getting your application into PATH and so forth.

A .src.rpm might make the most sense to deploy your application as on redhat, since that actually builds it. I think debian has an equivalent but can't name it offhand.

Or you could simply have your package distribute objects and scripts and have a compiler dependency, and issue instructions for admins to run the final compilation script themselves. Make it a good script. Be extremely careful of where everything ends up.
# 3  
Old 05-12-2011
Addendum to Corona: most package managers (at least those for Debian/Ubuntu (.deb), RedHat/SuSE (.rpm), and Slackware (.txz)) support post-install scripts that could do the linking step, assuming the package itself has a hard dependency on the compiler and maybe other tools/libraries required.

A bad example of using the package manager (IMO) are the RPMs for Oracles RDBMS, which is just a glorified tarball without any dependency checking, ...
# 4  
Old 05-12-2011
Thank you for considering my question. First of all, I know who my clients will be and many of them will not be or have anything like system administrators. Many of them will be able to run a script and follow simple instructions, but do little else. The script + instructions is going to have to be as close to foolproof as possible.

My current experiment at writing an install script is simply a shell script and nothing else, because I have heard of package manager scripts, but don't know anything about them (yet). Since I am linking in libraries at compile time, I will have to have some method of automatically downloading these things accross a variety of Linux flavors.

At this point, the responses are a little over my head. It sounds from one of the responses like I could create a script of the .src.rpm type, which I could Google and learn about if it is a good idea. What I am trying to find out is whether I should continue with my shell script and within it make calls to Yum or Apt to install the required libraries, or whether a shell script is basically the wrong way to go. If I did use a package manager script, or some other type of script, where would I go to learn how to do it?

I am just an applications developer and Linux installation is a mystery to me.

Thanks again.

Brandon
# 5  
Old 05-12-2011
Package manager scripts are just shell scripts, with the main difference being that
  • they are included in the package
  • they won't be on disk permanent
  • they are started by the package manager automatically when needed

A description of how to create Debian/Ubuntu packages can be found here. A similar reference for RPM (Red Hat/CentOS/SuSE) starts here.
# 6  
Old 05-13-2011
Fabulous! Thank you.
Login or Register to Ask a Question

Previous Thread | Next Thread

9 More Discussions You Might Find Interesting

1. What is on Your Mind?

Linux & UNIX in commercial appliances

Hi All, I was wondering how come major router vendors (e.g C**CO ) use a custom linux/unix in their appliance but do not publish this custom code. Isn't it a disobedience to the GPL licence ? Please share your thoughts. (0 Replies)
Discussion started by: coolatt
0 Replies

2. AIX

Installing programs on AIX

G'day all. Thanks to everyone for helping me getting my h50 rs/6000 server going Now i need just a bit more help. Can anyone tell me how i install other software using remote console? (2 Replies)
Discussion started by: ADS2459
2 Replies

3. UNIX for Dummies Questions & Answers

Installing programs in Unix

I have installed a software called GMT, then writing a script that call the new programs ./example02.sh but I am getting ./example02.sh: line 20: gmtset: command not found I have done ./configure make make install (1 Reply)
Discussion started by: kristinu
1 Replies

4. UNIX for Dummies Questions & Answers

installing unix programs

hi everyone, I'm new to the forums. I am in the process of learning unix. I have a problem installing a unix program. The program at question is Links. It is an internet browser. I have the INSTALL notes, but I'm not having much luck at all. Any ideas on how to install? (3 Replies)
Discussion started by: fissm
3 Replies

5. UNIX for Dummies Questions & Answers

Installing Programs

Hello, I have a simple question. How do make it so i can lauch a program from the shell. For instance I want to install firefox 2 and I wanna launch it with ff2 in the terminal, so i tried this to my .bashrc file: alias ff2='/path/./firefox' and its not working as I would hope. anywho,... (2 Replies)
Discussion started by: SeamusHC
2 Replies

6. UNIX for Dummies Questions & Answers

installing/running programs.

Hey folks, i'm a total newbie at linux (only installed it yesterday) so don't be mad at me for querying this. I downloaded firefox, and unpacked the library files and binaries into /usr/lib/firefox. Now, am I correct in thinking that to run it, I need to enter the 'sh /usr/lib/firefox' command into... (4 Replies)
Discussion started by: shep
4 Replies

7. Shell Programming and Scripting

i need c programs for linux commands

hi i am doing a small project on linux shell so if anyone can provide me some programs which can ipmlement commands like copy,date,calendar ....thank u (1 Reply)
Discussion started by: lit_joel
1 Replies

8. Linux

Linux-programs

I have installed Red Hat Linux 9.0 recently on my computer. Im wondering if there are any good sites for downloading linux programs besides the site of Red Hat. Thank you in advance!:D (4 Replies)
Discussion started by: SolidSnake
4 Replies

9. UNIX for Dummies Questions & Answers

Installing Programs In Linux

I am not sure how to install a program in linux. I have Java 2 on a CD the CD Mounts but then I'm lost. What do I need to do so that the programm will install on my system? Thank you, Monkette (6 Replies)
Discussion started by: kdelph
6 Replies
Login or Register to Ask a Question