From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alexander Bokovoy To: devel@linux.iplabs.ru Message-ID: <20010209163119.A21675@avilink.net> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i Subject: [devel] [kojima@conectiva.com.br: Re: [Apt-rpm] meta packages ?] Sender: devel-admin@linux.iplabs.ru Errors-To: devel-admin@linux.iplabs.ru X-BeenThere: devel@linux.iplabs.ru X-Mailman-Version: 2.0 Precedence: bulk Reply-To: devel@linux.iplabs.ru List-Help: List-Post: List-Subscribe: , List-Id: IPLabs Linux Team Developers mailing list List-Unsubscribe: , List-Archive: X-Original-Date: Fri, 9 Feb 2001 16:31:19 +0200 Date: Fri, 9 Feb 2001 16:31:19 +0200 Archived-At: List-Archive: List-Post: ----- Forwarded message from "Alfredo K. Kojima" ----- From: "Alfredo K. Kojima" To: "Matilainen Panu (NRC/Helsinki)" cc: "Hiller, Thomas" , "'apt-rpm@distro.conectiva.com.br'" Subject: Re: [Apt-rpm] meta packages ? Date: Thu, 8 Feb 2001 14:56:10 -0200 (BRST) I have this one (quick&dirty) attached. -- Alfredo On Thu, 8 Feb 2001, Matilainen Panu (NRC/Helsinki) wrote: > On Wed, 7 Feb 2001, ext Alfredo K. Kojima wrote: > > > > > > > We use the same approach as Debian for that, which are task packages. > > You just make an empty package that contains only a bunbh > > of Requires for each package you want installed. Then install that task > > package. You can easily convert a comps file to a set of task packages > > with some script. > > You wouldn't, by any chance, have written such a script? :) > > - Panu - > > > > > -- > > Alfredo > > > > > > On Wed, 7 Feb 2001, Hiller, Thomas wrote: > > > > > Hi, > > > > > > I'm looking for some kind of meta package support in apt-get. I think it > > > would be nice to have at least some grouping like that from the "comps" file > > > in RedHat. > > > Is this possible with apt-get ? What must be done for it ? > > > Is there a solution for installing with apt-get (from scratch) ? I'm working > > > on a universal installation server. Do you have some pointers ? I would > > > really appreciate it, if I can install all my servers from installation > > > servers and not be bound to kickstart or similiar solutions. > > > > > > Thanks. > > > > > > Regards, > > > Thomas > > > > > > Thomas Hiller > > > > > > COMPAQ Computer Corporation > > > Global SAP Solution Center > > > SAP LinuxLab > > > Altrottstr. 31, D-69190 Walldorf - Germany > > > > > > * Phone: ++49/6227/7-45426 > > > * Fax: ++49/6227/7-55426 > > > * Mobil: ++49/172/7282550 > > > *E* mailto: thomas.hiller@compaq.com > > > > > > _______________________________________________ > > > Apt-rpm mailing list > > > Apt-rpm@distro.conectiva.com.br > > > http://distro.conectiva.com.br/mailman/listinfo/apt-rpm > > > > > > > _______________________________________________ > > Apt-rpm mailing list > > Apt-rpm@distro.conectiva.com.br > > http://distro.conectiva.com.br/mailman/listinfo/apt-rpm > > > > -- > #!/usr/bin/python import time import sys from string import * nl="\n" def nameToTName(name): name = lower(strip(name)) name = replace(name, " ", "_") name = replace(name, "/", "_") return name def taskalize(arch, version, name, packages): fname = "task--"+nameToTName(name)+".spec" f = open(fname, "w+") f.write("Summary: Metapackage for "+name+nl) f.write("Name: task--"+nameToTName(name)+nl) f.write("Version: "+version+nl) f.write("Release: 1"+nl) f.write("License: to kill"+nl) f.write("Group: Tasks"+nl) for p in packages: if p[0]=="@": f.write("Requires: task--"+nameToTName(p[1:])+nl) else: tok = split(p) if len(tok) == 2: if (tok[0]=="!" and tok[0]!=arch) or \ (tok[0]!="!" and tok[0]==arch): f.write("Requires: "+strip(tok[1])+nl) else: f.write("Requires: "+p+nl) f.write("BuildArch: "+arch+nl) f.write("BuildRoot: %{_tmppath}/%{name}-%{version}-root"+nl) f.write(nl+"%description"+nl) f.write("Auto-generated meta package to install things for "+name+"."+nl) f.write(nl+"%files"+nl) f.close() print "Created", fname def taskalizeFile(file, arch, version): try: f = open(file, "r") except: print "comps file",file,"could not be opened." sys.exit(1) while 1: # garbage line = f.readline() if not line: break line = strip(line[:-1]) if not line: continue if line[-1]!="{": continue tokens = split(strip(line[1:-1])) if tokens[0][:2]=="--": del tokens[0] name = join(tokens) pl = [] while 1: line = f.readline() if not line: print "ERROR: File ended with incomplete data" sys.exit(1) line=line[:-1] if line=="}": break pl.append(strip(line)) taskalize(arch, version, name, pl) f.close() t=time.localtime(time.time()) y=`t[0]` m=`t[1]` if len(m)==1: m="0"+m d=`t[2]` if len(d)==1: d="0"+d version=y+m+d taskalizeFile(sys.argv[1], "i386", version) print "Use rpm -ba to create the packages" ----- End forwarded message ----- -- Sincerely yours, Alexander Bokovoy The Midgard Project | www.midgard-project.org | Aurora R&D team Minsk Linux Users Group | www.minsk-lug.net | www.aurora-linux.com IPLabs Linux Team | linux.iplabs.ru | Architecte Open Source -- Whoever would lie usefully should lie seldom. _______________________________________________ Devel mailing list Devel@linux.iplabs.ru http://www.logic.ru/mailman/listinfo/devel