From owner-freebsd-ports@FreeBSD.ORG Fri Oct 3 08:08:49 2008 Return-Path: Delivered-To: freebsd-ports@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id AE4311065689 for ; Fri, 3 Oct 2008 08:08:49 +0000 (UTC) (envelope-from dnaeon@gmail.com) Received: from fg-out-1718.google.com (fg-out-1718.google.com [72.14.220.155]) by mx1.freebsd.org (Postfix) with ESMTP id 223B08FC17 for ; Fri, 3 Oct 2008 08:08:48 +0000 (UTC) (envelope-from dnaeon@gmail.com) Received: by fg-out-1718.google.com with SMTP id l26so983065fgb.35 for ; Fri, 03 Oct 2008 01:08:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from :user-agent:mime-version:to:cc:subject:references:in-reply-to :content-type:content-transfer-encoding; bh=Krh0RoHJ4lTipzlOrwpQZQTpSOKHAr8fp7xp02aNOyI=; b=XukeDxO3l19NNh7MmMroFs2Lh8NLnhKMDi21pIU1VEy9AO3IE8hLe7LKYxnJRCXNDZ nGVQMqjkGBMqEw1nJwnKQaoDQh9pcPnizAZebugxRWZv2aFb95DVZ00dE38i2qZrNzaj uLOMBSKfv+W+ty+SyBlt53Iz0Cl9C4CGAmVYs= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:user-agent:mime-version:to:cc:subject :references:in-reply-to:content-type:content-transfer-encoding; b=qYYbq7MXYNqM/2mm1p7k/0BCyeP4W08cZ0jMIQ64TONPwruXDVgZLLaoc7F1eAihDs cO4jIcZWLLryfAHIvkUIny7Xm8GDzgfntmrPZzJXC7meLuHCmYtjPuqQELa8QpS/uSsT RHPNAc6piCwIhPMhvHjv9DpFr2jvk4tSmbQFI= Received: by 10.86.65.9 with SMTP id n9mr764973fga.55.1223021327645; Fri, 03 Oct 2008 01:08:47 -0700 (PDT) Received: from tsunami.bsdworld ([78.90.73.88]) by mx.google.com with ESMTPS id e20sm3564543fga.1.2008.10.03.01.08.46 (version=TLSv1/SSLv3 cipher=RC4-MD5); Fri, 03 Oct 2008 01:08:46 -0700 (PDT) Message-ID: <48E5D355.6050408@gmail.com> Date: Fri, 03 Oct 2008 11:09:57 +0300 From: Marin Atanasov User-Agent: Thunderbird 2.0.0.17 (X11/20080927) MIME-Version: 1.0 To: Michel Talon References: <20081002123647.GA54217@lpthe.jussieu.fr> In-Reply-To: <20081002123647.GA54217@lpthe.jussieu.fr> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: freebsd-ports@freebsd.org Subject: Re: My interactive version of pkg_add X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 03 Oct 2008 08:08:49 -0000 Michel Talon wrote: > Marcin Wisnicki wrote: > > >> Unless I'm missing something there needs to be a MOVED file or ideally >> something like it that has pkgnames (with versions) for a binary >> package update tool to work. >> > > First, congratulations to Marin Atanasov for having completed his > program! As far as i understand, Marin's goal was simpler that an > upgrade tool for binary packages, it was simply an install tool, > allowing to choose interactively on various repositories. I think this > goal is fulfilled and is useful. > > For upgrading, the situation is vastly more complicated, indeed one > needs to read MOVED and use information here, in particular follow the > name changes of ports. For example you may have a port whose proper > upgrade has a different name, etc. or ports have disappeared, etc. > I am not even sure that a completely bullet proof system can be written > within the limits of the present FreeBSD ports system. > > I am quite sure that one of the keys of Marcin's success is having > limited his aims. Similarly the excellent portmaster tool for upgrading > owes its success to strict limitation to upgrade from source, using the > available preexisting pkg_* tools - plus a lot of polishing. > > > > Yeap, as Michel Talon noticed I'm not trying to create a package upgrade tool, but just a tool for installing packages in an interactive manner. I think that there are already enough and good package upgrade tools - portmaster for example would do the job. My program is designed to make easier the process of finding and install the packages. I've written some functions which search for a file pattern when we are performing a local and remote search - then the information is being stored in a stack and at the end of the code we have a single system() call which executes `pkg_add [pkgname]'. So if one have looked at the code will see that actually my program gives the interactive interface and for installing - it uses the existing pkg_add tool. Other pkg_* commands could be supported by the program, but I don't see a use of it - except maybe the purpose mentioned above for a package upgrade tool. Btw, what would you say about this name `pkg_add_it' - 'pkg_add Interactive Tool'? :) Cheers, Marin -- Marin Atanasov dnaeon AT gmail DOT com daemon AT unix-heaven DOT org