From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp10.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms0.migadu.com with LMTPS id UFE8Dp/f0WFKKQAAgWs5BA (envelope-from ) for ; Sun, 02 Jan 2022 18:23:43 +0100 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp10.migadu.com with LMTPS id mGj4Bp/f0WEfHgAAG6o9tA (envelope-from ) for ; Sun, 02 Jan 2022 18:23:43 +0100 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 796683385E for ; Sun, 2 Jan 2022 18:23:42 +0100 (CET) Received: from localhost ([::1]:57018 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1n44a5-0007WA-MO for larch@yhetil.org; Sun, 02 Jan 2022 12:23:41 -0500 Received: from eggs.gnu.org ([209.51.188.92]:41378) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1n44ZS-0007Np-M3 for guix-patches@gnu.org; Sun, 02 Jan 2022 12:23:03 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:50276) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1n44ZS-0002Ua-D2 for guix-patches@gnu.org; Sun, 02 Jan 2022 12:23:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1n44ZS-0003WP-4O for guix-patches@gnu.org; Sun, 02 Jan 2022 12:23:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#52961] [PATCH] home: import: Fix handling of manifest entries with specific output. Resent-From: Arjan Adriaanse Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sun, 02 Jan 2022 17:23:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 52961 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 52961@debbugs.gnu.org Cc: Arjan Adriaanse X-Debbugs-Original-To: guix-patches@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.164114414013456 (code B ref -1); Sun, 02 Jan 2022 17:23:01 +0000 Received: (at submit) by debbugs.gnu.org; 2 Jan 2022 17:22:20 +0000 Received: from localhost ([127.0.0.1]:33589 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1n44Ym-0003Uy-D0 for submit@debbugs.gnu.org; Sun, 02 Jan 2022 12:22:20 -0500 Received: from lists.gnu.org ([209.51.188.17]:58286) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1n44Yk-0003Uq-1w for submit@debbugs.gnu.org; Sun, 02 Jan 2022 12:22:18 -0500 Received: from eggs.gnu.org ([209.51.188.92]:41222) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1n44Yi-0007DX-TL for guix-patches@gnu.org; Sun, 02 Jan 2022 12:22:17 -0500 Received: from outbound.soverin.net ([116.202.126.228]:56183) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1n44Yg-0002Pg-Um for guix-patches@gnu.org; Sun, 02 Jan 2022 12:22:16 -0500 Received: from smtp.freedom.nl (unknown [10.10.3.36]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) (No client certificate requested) by outbound.soverin.net (Postfix) with ESMTPS id 6A2BF85C for ; Sun, 2 Jan 2022 17:22:09 +0000 (UTC) Received: from smtp.freedom.nl (smtp.freedom.nl [116.202.65.211]) by soverin.net DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=adriaan.se; s=soverin; t=1641144129; bh=un3igRj0aLqYMwPyG2Rq/EifOmCAZmYGd+PRTljvwsg=; h=From:To:Cc:Subject:Date:From; b=jEH4UKx4lY9V1tkAIvWZDiPfDSUirAXLv7728yLYFuaJSLLWrBeqsttEUWt8FRWZO iFxOL2Hhl2otne0NpSQv4I8XT6Pg0nwR+N6jm9QuOaxQY254gQC2pWxUFwu+ZLtcgI ReiIqBQankA0a79trIYJfWzmw+BAZYVGmbS/+jCIlk8bxe9YC2UT/nFoPgNB8IEe6o 3W4k4zl8Ipq/rmnZ8A+HG/cq5LbnOsgFIZ5Hbs6XjYh8KJzpKBtsUY9eCleIhZNjoF dXocautLoqfDhMUdxukjcQipFtEEH5MtsTHNXNf/5v1e018YN/GQl4FFBEd5IBS6WK j3O2zSqfCx+Zw== From: Arjan Adriaanse Date: Sun, 2 Jan 2022 18:20:45 +0100 Message-Id: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Received-SPF: none client-ip=116.202.126.228; envelope-from=arjan@adriaan.se; helo=outbound.soverin.net X-Spam_score_int: -8 X-Spam_score: -0.9 X-Spam_bar: / X-Spam_report: (-0.9 / 5.0 requ) DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_PASS=-0.001, SPF_NONE=0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+larch=yhetil.org@gnu.org Sender: "Guix-patches" X-Migadu-Flow: FLOW_IN X-Migadu-Country: US ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1641144222; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding:resent-cc: resent-from:resent-sender:resent-message-id:list-id:list-help: list-unsubscribe:list-subscribe:list-post:dkim-signature; bh=6YfY1nxrrgCtskeF1ztypTgsv0DLr9c+yhIlf6rbElc=; b=WWY+mWqJegGc3buxkgJM/YcYeIcGs1JqSWTL4ehDVmDp6W60N1PK5b0d8AzsXvt9AQsxW9 UMTj5iup9Fws2+TpxI8QinyYVVJ+q5uF22qsxvhE2oCevWD04FwdygplcllZYbjtxiCRTb RS4MsyxF0iYaBZmVFrX/N1xLggWSkt5X7c1+p9RabvSl8tCSbk0sc4n3ZXslVX4ch85oHa Toxc7hUu5G7H3Z45Rp557YHJBJwVu515X2dcbsbUPMD2i1p0paGJgIjpAYCvZHm+Dja/O1 Flalji2NpuZ+jd278I9YKnS9R+UtoWd4QlzBNpNOVIfwQTmymxpXhi7fxrtG8A== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1641144222; a=rsa-sha256; cv=none; b=NymLLCsVs0AKncrRpWG6i/DkbqJ535rJYdNmnFBB6GY4J1RPwNiztFfJiUgsAGL7iyHdCr jPwajPAqf1735l6BW6ZR1DSha4B9oI/CNZ80Y2UyrPVA9hXr2v/jy5U/IG5fVomUGTOVP8 9M2d7PCS492izzH/Q1iLQdYHGE20Q3I3ROD7kvyVp8KAawdaw2A4PepSAd36ENco1gIOT+ n4JQoSGoQ8vZhkU6qFckpmUOZAK8nFJWH9Li0FDzrBJFK2QDugAvYk1jTHY1XXJDAN4dYk YdlCrZ7QsWLPBSutmPTlWQDd0PoMY8+J+4K5tsfDzCJ1NAMXUx9eiGiexx4wkQ== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=adriaan.se header.s=soverin header.b=jEH4UKx4; dmarc=none; spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org" X-Migadu-Spam-Score: -1.38 Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=adriaan.se header.s=soverin header.b=jEH4UKx4; dmarc=none; spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org" X-Migadu-Queue-Id: 796683385E X-Spam-Score: -1.38 X-Migadu-Scanner: scn1.migadu.com X-TUID: hcjesKAV5iLA specification->package fails on manifest entries with specific outputs, resulting in an invalid home configuration. This changes the import command to use specification->package+output instead. * guix/scripts/home/import.scm (manifest+configuration-files->code): Make sure manifest entries with specific output are also handled. * tests/home-import.scm: Specify output in home environment manifest entry. --- guix/scripts/home/import.scm | 4 +++- tests/home-import.scm | 14 ++++++++------ 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/guix/scripts/home/import.scm b/guix/scripts/home/import.scm index fbf89069a7..15bd3140ed 100644 --- a/guix/scripts/home/import.scm +++ b/guix/scripts/home/import.scm @@ -2,6 +2,7 @@ ;;; Copyright © 2021 Xinglu Chen ;;; Copyright © 2021 Andrew Tropin ;;; Copyright © 2021 Ludovic Courtès +;;; Copyright © 2022 Arjan Adriaanse ;;; ;;; This file is part of GNU Guix. ;;; @@ -164,7 +165,8 @@ (define (manifest+configuration-files->code manifest ,@(delete-duplicates (concatenate modules))) (home-environment - (packages (map specification->package ,packages)) + (packages (map (compose list specification->package+output) + ,packages)) (services (list ,@services))))))))) (define* (import-manifest diff --git a/tests/home-import.scm b/tests/home-import.scm index 0bcdf8a469..6d373acf79 100644 --- a/tests/home-import.scm +++ b/tests/home-import.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2021 Xinglu Chen +;;; Copyright © 2022 Arjan Adriaanse ;;; ;;; This file is part of GNU Guix. ;;; @@ -52,7 +53,8 @@ (define glibc (define gcc (manifest-entry (name "gcc") - (version "10.3.0") + (version "") + (output "lib") (item "/gnu/store/..."))) ;; Helpers for checking and generating home environments. @@ -101,8 +103,8 @@ (define-home-environment-matcher match-home-environment-no-services ('gnu 'services)) ('home-environment ('packages - ('map 'specification->package - ('list "guile@2.0.9" "gcc" "glibc@2.19"))) + ('map ('compose 'list 'specification->package+output) + ('list "guile@2.0.9" "gcc:lib" "glibc@2.19"))) ('services ('list))))) @@ -118,7 +120,7 @@ (define-home-environment-matcher match-home-environment-transformations ('home-environment ('packages ('list (transform ('specification->package "guile@2.0.9")) - ('specification->package "gcc") + ('list ('specification->package "gcc") "lib") ('specification->package "glibc@2.19"))) ('services ('list))))) @@ -130,7 +132,7 @@ (define-home-environment-matcher match-home-environment-no-services-nor-packages ('gnu 'services)) ('home-environment ('packages - ('map 'specification->package + ('map ('compose 'list 'specification->package+output) ('list))) ('services ('list))))) @@ -145,7 +147,7 @@ (define-home-environment-matcher match-home-environment-bash-service ('gnu 'home 'services 'shells)) ('home-environment ('packages - ('map 'specification->package + ('map ('compose 'list 'specification->package+output) ('list))) ('services ('list ('service base-commit: a655d731e2c1bb912aa52b6e00b0d69394aa2a3b -- 2.34.0