From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:470:142:3::10]:58578) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jRGyo-0002LI-O9 for guix-patches@gnu.org; Wed, 22 Apr 2020 11:08:03 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.90_1) (envelope-from ) id 1jRGyo-0000y3-Cb for guix-patches@gnu.org; Wed, 22 Apr 2020 11:08:02 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:41296) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1jRGyo-0000w9-1g for guix-patches@gnu.org; Wed, 22 Apr 2020 11:08:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1jRGyn-00012d-Qo for guix-patches@gnu.org; Wed, 22 Apr 2020 11:08:01 -0400 Subject: [bug#40770] [PATCH 0/5] Add declarative profiles Resent-Message-ID: Received: from eggs.gnu.org ([2001:470:142:3::10]:58366) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jRGy2-0002F4-Bx for guix-patches@gnu.org; Wed, 22 Apr 2020 11:07:14 -0400 From: Ludovic =?UTF-8?Q?Court=C3=A8s?= Date: Wed, 22 Apr 2020 17:06:41 +0200 Message-Id: <20200422150641.5267-1-ludo@gnu.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+kyle=kyleam.com@gnu.org Sender: "Guix-patches" To: 40770@debbugs.gnu.org Cc: Ludovic =?UTF-8?Q?Court=C3=A8s?= Hello Guix! This patch set introduces “declarative profiles” or, in other words, a way to declare a profile and use it in a gexp without calling ‘profile-derivation’, fiddling with ‘%store-monad’ and all that. The goals are: 1. To provide a simpler programming interface, reducing the need to resort to ‘%store-monad’, and making it usable in a wider range of contexts (see for example ). 2. To potentially improve high-level caching in the object cache as well as “parallelism” (see ). Feedback welcome! Ludo’. Ludovic Courtès (5): profiles: Add lowerable record type. system: 'operating-system-directory-base-entries' uses 'profile'. services: profile: Use a declarative profile. pack: Use a declarative profile. services: system: Initial entries are non-monadic. gnu/services.scm | 13 ++++++------ gnu/system.scm | 27 ++++++++++++------------- gnu/system/linux-container.scm | 6 ++---- guix/profiles.scm | 36 ++++++++++++++++++++++++++++++++++ guix/scripts/pack.scm | 33 +++++++++++++++---------------- tests/profiles.scm | 13 +++++++++++- 6 files changed, 84 insertions(+), 44 deletions(-) -- 2.26.0