From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ricardo Wurmus Subject: running a script in a post-build hook? Date: Fri, 7 Oct 2016 17:18:36 +0200 Message-ID: <877f9kfar7.fsf@mdc-berlin.de> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:35737) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bsWvE-0005Lo-EA for help-guix@gnu.org; Fri, 07 Oct 2016 11:19:00 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bsWv8-0006BH-FN for help-guix@gnu.org; Fri, 07 Oct 2016 11:18:51 -0400 Received: from pegasus.bbbm.mdc-berlin.de ([141.80.25.20]:54247) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bsWv8-00068G-0J for help-guix@gnu.org; Fri, 07 Oct 2016 11:18:46 -0400 Received: from localhost (localhost [127.0.0.1]) by pegasus.bbbm.mdc-berlin.de (Postfix) with ESMTP id 6B9E73805EC for ; Fri, 7 Oct 2016 17:18:43 +0200 (CEST) Received: from pegasus.bbbm.mdc-berlin.de ([127.0.0.1]) by localhost (pegasus.bbbm.mdc-berlin.de [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id oAOVjqJfHyTM for ; Fri, 7 Oct 2016 17:18:37 +0200 (CEST) Received: from HTCAONE.mdc-berlin.net (puck.citx.mdc-berlin.de [141.80.36.101]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by pegasus.bbbm.mdc-berlin.de (Postfix) with ESMTPS for ; Fri, 7 Oct 2016 17:18:37 +0200 (CEST) List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-guix-bounces+gcggh-help-guix=m.gmane.org@gnu.org Sender: "Help-Guix" To: help-guix Hi Guix, here=E2=80=99s my problem: I need to have the store on a big slow NFS ser= ver with online compression and deduplication. This means that *everything* in Guix is slow: downloading binaries, building packages from source, building a new profile generation =E2=80=94 it=E2=80=99s all *very* slow. So I thought: I should be able to just have the store on fast local disks and copy over store items to the slow NFS server when they are done. This is not easy because the store is very big and at the filesystem level we cannot take advantage of the fact that the store is append-only for the most part. So running rsync, for example, won=E2=80=99= t cut it. The daemon, however, does have information about completed builds and new store items. Does the daemon have a post-build hook that can be called with the names of the new store items which I could then copy over? (Or even the names of store items I need to delete after =E2=80=9C= guix gc=E2=80=9D.) Could the build hook feature be used for this, maybe by wrapping the normal build such that a script is run when it finishes? Finally, is this a good idea? Or is /gnu/store/.links going to be a problem? Should a post-build hook also inform about deduplication decisions? Or should I just turn of deduplication in my case? ~~ Ricardo