From mboxrd@z Thu Jan 1 00:00:00 1970 From: Julien Lepiller Subject: Re: Install hook Date: Sun, 19 Mar 2017 13:14:44 +0100 Message-ID: <20170319131437.00d9608e@polymos.lepiller.eu> References: <1489919448.1067.2.camel@pelzflorian.de> <20170319112339.GA2875@jocasta.intra> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:46833) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cpZeW-0008QV-Vs for guix-devel@gnu.org; Sun, 19 Mar 2017 08:09:42 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cpZeT-0002X2-Q3 for guix-devel@gnu.org; Sun, 19 Mar 2017 08:09:40 -0400 Received: from dau94-h03-89-91-205-84.dsl.sta.abo.bbox.fr ([89.91.205.84]:55611 helo=skaro.lepiller.eu) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1cpZeT-0002Tk-CF for guix-devel@gnu.org; Sun, 19 Mar 2017 08:09:37 -0400 Received: from localhost (localhost [127.0.0.1]) by skaro.lepiller.eu (Postfix) with ESMTP id A613A80042 for ; Sun, 19 Mar 2017 13:09:33 +0100 (CET) Received: from skaro.lepiller.eu ([127.0.0.1]) by localhost (lepiller.eu [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id xwXlnoixQ2j5 for ; Sun, 19 Mar 2017 13:09:29 +0100 (CET) Received: from polymos.lepiller.eu (bbox.lan [192.168.1.254]) by skaro.lepiller.eu (Postfix) with ESMTPSA id B5DF47FB19 for ; Sun, 19 Mar 2017 13:09:28 +0100 (CET) In-Reply-To: <20170319112339.GA2875@jocasta.intra> List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: guix-devel@gnu.org I think install hooks are scripts run after each package installation, that are provided by the package itself. We already have a similar mechanism that takes place when building the user's profile. See http://git.savannah.gnu.org/cgit/guix.git/tree/guix/profiles.scm. For instance, we build a icon-theme.cache cache file for every icon theme in the user's profile. I have seen references to gschemas.compiled in our gtk-or-glib-build-system. Currently we build the file in each package, which means that only one version will be present in the user's profile if they install more that one package containing this file. I believe gschemas.compiled contains important information about some graphical packages, and in our current system, only one package can be referenced that way. I think we should make sure that this file is never present in the output of a package, and add a function to build it in profiles.scm. Does it make any sense? On Sun, 19 Mar 2017 12:23:39 +0100 John Darrington wrote: > I agree that this is a problem. It has been discussed before, and > various solutions have been suggested, but I don't think install > hooks was one of them. > > Can you elaborate on your idea? What would an install hook do, and > how would it work?