[Gambas-user] BASH help!

Hamish Robertson robertsonhamish at ...626...
Mon May 12 02:39:14 CEST 2008


Woah, I don't think I made myself clear.... Sorry guys, twas late at night.
:)


Basically I want to create super-deb installer files for ubuntu. A super-deb
will contain a mini repository. In it will be the program you want to
install and any dependancies that it needs + a newly created metapackage
that depends on everything in the file. The metapackage essentially becomes
the installer.

The superdeb will simply be a zipped bunch of deb files and a script all
compressed with makeself. The user double clicks on the sdeb file and it
immediately backs up the users' sources.list file, replaces it with a new
one that points to /tmp/setup, copies the repository to /tmp/setup and runs
apt-et update before installing the metapackage. Before it exits it puts the
original sources.list pack in place and asks the user if they wish to run
apt-get update, and explains why that is a good idea.

I've made a couple of these by hand and it works really well (s long as you
stick to the same distro...i.e an unbuntu 7.04 sdeb won't be compatible with
ubuntu 8.04 etc...).

I think it's a simple solution to a problem that can drive you up the wall.
I know apt-on-cd does a similar thing, but you need to use apt-get or
synaptic after loading the cdrom into the repos...This is easy for someone
who is familiar with linux, but impossible for someone who has never used
linux before.

Anyway, I need a foolproof and automatic way of making these sdeb files
cause doing it manually sucks and is too complicated for the average user.
My idea here was to intially create a program that makes the sdeb....problem
is that if you run it from your distro...it may not pick up all the
dependancies as you may already have things installed etc, thereby making
the sdeb uninstallable on another system.

The solution apears to be to use virtualbox or vmware/qemu and run a special
mini sdeb distro from a virtual machine. If the sdeb distro is minimal, then
it should get ALL the required dependancies when making the sdebfile,
thereby making the sdeb installable on just about any ubuntu system that is
the same version.

Er following me?

So getting back to my original question... (Sorry for the long  post)

This is how I can see the "make and sdeb" program working.

I make a small distro based off ubuntu minimal with only gtklibs, synaptic,
x.org and my sdeb program loaded as exras. When a user boots the distro from
VMware it loads X and presents them with the sdeb program which then asks
them to choose the packages they wish to download to put into the sdeb file.

Synaptic does its thing, closes then sdeb asks you what you want to name the
installer (metapackage). You type in a name, then sdeb makes the metapackage
and a repository out of everything in /var/cache/apt/archives and zips it
all + a run script an acrhive using makeself.

That is it. I know it works as i have made a few of these sdeb files
already...atomating the whole process is a bit more tricky.

Anyway, I need help in getting the list of deb files into the metapackage's
control file. This bit has got me bamboozled.

Any ideas? Is my idea any good?

Some thoughts from gurus like you would be greatly appreciated.

thanks in advance;
H.





2008/5/11 David Reese <horus at ...1679...>:

> Hamish Robertson wrote:
> > Hey guys,
> > I'm a complete novice to programming. so please don't flame me is I say
> > anything stupid here.
> >
> No, man, that's how we learn things.
> > I have a great idea for a program that will (hopefully) help linux a lot.
> >
> > debs and rpms seem to be the defacto standards now for distributing linux
> > programs. However this system works best only if you have an internet
> > connection.
> >
> > I've got a good solution to this probroblem. way easier than
> > apt-on-cd....I'm just having a bit of trouble working out the technical
> > details.
> >
> >
> > This is the plan. (Using Ubuntu as the base distro for the time being)
> >
> > I create a small distro based on ubuntu-minimal, with only  x.org,
> gtklibs,
> > synaptic and the gambas runtime installed.
> >
> > Once the distro gets booted (preferably from virtualbox or vmware) it
> > automatically loads my program which walks the user through the process
> > choosing the package they wish to install with synaptic and downloading
> the
> > required packages and dependancies. This will put all the downloaded .deb
> > files into /var/cache/apt/archives.
> >
> > This next bit has me stuck. I need to find some way of getting a list of
> all
> > the downloaded .deb files and putting that into the control file of a new
> > metapackage. I was thinking of using a bash script here but I'm not
> sure...
> > Any suggestions?
> Yeah.  This sounds very similar to what is going on in the PCLinux OS
> community with repackagings of this distribution for specialized
> purposes.  You might want to take a look at what's going on at
> http://www.pclinuxos.com?  Look at MiniMe, especially.
>
> Later On,
> Dave
>
> -------------------------------------------------------------------------
> This SF.net email is sponsored by the 2008 JavaOne(SM) Conference
> Don't miss this year's exciting event. There's still time to save $100.
> Use priority code J8TL2D2.
>
> http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
> _______________________________________________
> Gambas-user mailing list
> Gambas-user at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/gambas-user
>



More information about the User mailing list