From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM10-DM6-obe.outbound.protection.outlook.com (mail-dm6nam10on2111.outbound.protection.outlook.com [40.107.93.111]) by sourceware.org (Postfix) with ESMTPS id E2E8D385C415 for ; Wed, 6 Oct 2021 12:01:10 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org E2E8D385C415 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=EVZeo8+ApHAwvRWNEoVTbeIVuy3kjFvX9GiUZ2tE0tSJAPpYzTKQyTpw6JGxpcBH8pV/PtHX6KzKwPVnH2ckoPXTsg26pcbDX/S/dyfTYiAzU9TbigibCDmyGN0q+M9J0RaffhRqUX+9HRLgCxYZYeVJA45pgh1XjCnqzG0A/9Q7zyhy325xpeO1p/QBhXGp9Gw8F17J3eydr+dHFvqS5tU/DU9+itE/kQH7euArWFD5bRBAugHvibNhsRa5BfpOVzpUm3u8yvV9t47doopuI/JLG6otZcK64a5YGiBN388rRp93KA0SbLe8BIvgp/DyFTwiU2bt35uaOkKR/nbXoQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=1w1/HHqfcJ4jwkCRS8x/E06rOEO+kyEkYJ/qNjs4zPU=; b=OicxcicuPpZQxPqhGp8o1lcpNZuZ3FyQKh2gVt1HpggM2mQRhIBXMXPtPmAqoeCwBMTIO6YZ4oexQd5q5CbUbEX2V4sDZ7/ZNC0Hipbib8rftEvWRAGifhbW8+N4aXQr6v0XdCMXVd2r5Wzi199aGFnIErCJmy9wU+3ySMe9LYpXy4d4KCIiI06K6VulCHcjsXiggdlskqfOwhlP4k1/yn/NJ7acCvqaAlvAW/G5N2oWWJUQ6Oyu0m1QdEc56xrvRNU4Sk1t55YvYL4L/aufWTLe/2ZhH1BphXb7CrpTNu8sEEU9CoJxx7BDuTCPIIhfLBNCAiKPrzzf7ized4Cz1g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=cornell.edu; dmarc=pass action=none header.from=cornell.edu; dkim=pass header.d=cornell.edu; arc=none Received: from BN7PR04MB4388.namprd04.prod.outlook.com (2603:10b6:406:f8::19) by BN6PR04MB0437.namprd04.prod.outlook.com (2603:10b6:404:96::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4587.18; Wed, 6 Oct 2021 12:01:06 +0000 Received: from BN7PR04MB4388.namprd04.prod.outlook.com ([fe80::d1a8:b6b3:dfd1:b093]) by BN7PR04MB4388.namprd04.prod.outlook.com ([fe80::d1a8:b6b3:dfd1:b093%6]) with mapi id 15.20.4566.022; Wed, 6 Oct 2021 12:01:06 +0000 Subject: Re: Question about 'provides' and emacs packaging To: cygwin-apps@cygwin.com References: <871r4zba8j.fsf@Rainer.invalid> From: Ken Brown Cc: Jon TURNEY Message-ID: <1e97fce0-593a-e8a6-cefe-fa6d8a1c4ed4@cornell.edu> Date: Wed, 6 Oct 2021 08:01:05 -0400 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.14.0 In-Reply-To: <871r4zba8j.fsf@Rainer.invalid> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit X-ClientProxiedBy: BL1PR13CA0329.namprd13.prod.outlook.com (2603:10b6:208:2c1::34) To BN7PR04MB4388.namprd04.prod.outlook.com (2603:10b6:406:f8::19) MIME-Version: 1.0 Received: from [IPv6:2603:7081:7e3f:3419:10d5:b5e:5549:4ccc] (2603:7081:7e3f:3419:10d5:b5e:5549:4ccc) by BL1PR13CA0329.namprd13.prod.outlook.com (2603:10b6:208:2c1::34) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4608.4 via Frontend Transport; Wed, 6 Oct 2021 12:01:06 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: d0629694-94c6-41ac-ffeb-08d988c0fa31 X-MS-TrafficTypeDiagnostic: BN6PR04MB0437: X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:6108; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: QI0rX1FNjAGZHtq+hupk5kihYqnPSo99JmW5AS3oReTtafJ5BWgwwEzjCQSN2BIc0RLZMGYH30q7CpG8JBAdjFJVfdoCt9bm9Kl7LKtkTkiawqsTnKvR1N8Og54k/N4rjajaUbJ5E0fK99PGWxkkQih0zFCDSxkVUxc5qvoLudk9lA8Sm9aD0/a3y697sr2Xx9t7j32CSNjQMI8j0kqQ/O8kicP04MFveL2XVYtI5auSbEn24Yjh8t0JzqgCdohrF6ZrUeiO8RW+gE1H+7Xkq/DJoY23Gw5RRvi0LApTygj7xXKsegMTqcuIL3+YtsRXOay2TXEAyzex8ugQ6pwtf3QLhvslzQH6Yjh2An2OUtlfdxROb0qtBPRtFlbZuoXH3kXx53KYsGbHSdRWMPzvmuhvkVGQkRvfgcBirHnYGdvMCe2k9mLvXgCS/0H3ILrfOK5BslAgbBu14H2qL8jf7j6Qt2IF2/cs6rR56UyLWVJv6F9aiqBq83tOWivOKyzH5o/pY7I4f8LBPWl5LFH716NX+bKIS4zNSdO9oGsSI0QAjCO8EjSDTxYn5quTkjtDsZxyomD+1M/Ptt9DXhUXUS5Zy6X7jeRLMBXd3z3DHxw4F7INgJhbKRpvUfhPtvJIAIhh3JfzueDeivImKr4UNfm3bguk5lmxxHGaurjyvr0Y4zdaG8uRYLzkV90ml1iqA+qUh+DrCSQh45KcbApm7lC5z9/OxiDEGvMi+aeoLj570tjP6sosdXkrOcdkqyXXujLq8S+J+iuphELkqMrJsw== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:BN7PR04MB4388.namprd04.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(4326008)(2906002)(6916009)(38100700002)(5660300002)(36756003)(66946007)(31696002)(75432002)(2616005)(186003)(786003)(316002)(86362001)(66476007)(508600001)(8676002)(53546011)(31686004)(66556008)(6486002)(8936002)(45980500001)(43740500002)(460985005); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?Windows-1252?Q?ZYp/OsPuAv/JoYx1i7zXXgrS8Th5WhiFSukyeInGctpEyymLkXaCD6Ww?= =?Windows-1252?Q?Mia6wPdpZ3kvvzhsJN+jM9JgMVE21oKPdip/YVWlzgCJJvIAN9+n4TVd?= =?Windows-1252?Q?ESX+k62EQOnRa9Q6MTw86KoYzPI5os7sIuiG+OCSdJLEf4A6ZnUPVmYf?= =?Windows-1252?Q?pdPIWMyVcvvn2vf6MGLRP0cRcUIS8mc+kWlNKRPDeLpSlZT+mwMPjQT7?= =?Windows-1252?Q?ywwogurBzwShdFFX/S9jCoHwNlqpyOgmTt8XD4/l7kU3gHBtqpRRQuE0?= =?Windows-1252?Q?Qp8SnvsnsE57qZq/smI/NmEpXbX53F+jdSxz8j5d0z9GZkoEXSDCmBDG?= =?Windows-1252?Q?h4xLxp5LFAYCe9Xh2ad6OpFsOjBBClYXLlqqAyYvmSe+26mhCip80AXf?= =?Windows-1252?Q?kQWNxt//xYIStrY31JTsQ87VznRM2LImrN99EvVKEBZ9qqLJody1EJpp?= =?Windows-1252?Q?ndoUs91kp5d+/LflsIfH4s7w9B+mmbIGZP+6w7SpegY/msClANfKOCDl?= =?Windows-1252?Q?vBoSScOMJhcybsNymL5+4t7mRPh1qhB6ths7bIIYUzBzjNFeNEvOoJba?= =?Windows-1252?Q?IOGNr6upgIhVlOs/C7QPfwZeJSRnnw0EvxxAbaAzFwJnDfrdW5MUXC77?= =?Windows-1252?Q?+ug5gdIuem+pLP01dIl1KkHsCz7PGmtQmshxp9CcMVNjCR/l5J+UOu5d?= =?Windows-1252?Q?sIHol+Wgofi4nBJFWyyNSKQgGwfTInTXLh1RuxyhM5fHleIUQf5WFf3n?= =?Windows-1252?Q?hMb5s/Xz7o0lc89fB44FvNW7SXj7GhqFFP2QSrfIQsm5wDLbyPyMS77k?= =?Windows-1252?Q?l0NTsnAbbHiGcjveU+1psknvyuAoxC2MqbULRaL85xGUtlc0fBmRgFT1?= =?Windows-1252?Q?3+s+1ugix57qcdmtnoZuBqnHkW3eyO4dmsjdC/TLtEgVywwf1QNstgM3?= =?Windows-1252?Q?6NCZTqNgV22MfjwF7UjBX+h+45R6mI/uE5FZP8kS/P6kL9UfPg1zi1HI?= =?Windows-1252?Q?t/VuzgVow9YoSTpfAP0Qg9bk8OhExoAMQFaNasP7lzdxVgUNAxLv3jZz?= =?Windows-1252?Q?JWil+rkz4GWl3n0MChDV52i5YVJtG4F8GtiuVErfl7iw33HMff5+/Lsx?= =?Windows-1252?Q?ObHuEixlwPUqaWzKy3ddK6LHLH79MNq1/9iW/jKjOaWanbgQiMtgUXyK?= =?Windows-1252?Q?sNK8Gf/4Rc0DOxz60TFWF58uhd8ayswAJ2muwqW6TQsa2drtszEi2FTq?= =?Windows-1252?Q?u7an4/+tz8jP8uNHMHArXYgjteCG7cv7meyb3/H+fpLxmUUNdVOuy4EN?= =?Windows-1252?Q?ts7sZhI5FDu3Hf0lUbccNhV7rT1YzgGy54dnGwqIPuU22YTWD8IV/oRH?= =?Windows-1252?Q?jdBEw01MxWp7tjOZr9mwi7BgBuY6o0qJCUwqkg6I80zmBVRmcojHmIWs?= =?Windows-1252?Q?86jjkFWKNXuXC13KRHMr6qa8Qcx4zdfCuJuQdg6WwRu7rraeAk8D4Ndi?= =?Windows-1252?Q?a/HEWtzq?= X-OriginatorOrg: cornell.edu X-MS-Exchange-CrossTenant-Network-Message-Id: d0629694-94c6-41ac-ffeb-08d988c0fa31 X-MS-Exchange-CrossTenant-AuthSource: BN7PR04MB4388.namprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Oct 2021 12:01:06.5573 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 5d7e4366-1b9b-45cf-8e79-b14b27df46e1 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: QYXzNwpbVKUrFZktRL2VYmc405Ja1HE9m8NZVbH74ik3IzIS00g5dIvA/49wZwsxBlHSUEKHLJMzHLAYLziS5w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN6PR04MB0437 X-Spam-Status: No, score=-3.8 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, JMQ_SPF_NEUTRAL, MSGID_FROM_MTA_HEADER, NICE_REPLY_A, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2, SPF_HELO_PASS, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: cygwin-apps@cygwin.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Cygwin package maintainer discussion list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 06 Oct 2021 12:01:12 -0000 On 10/5/2021 2:24 PM, Achim Gratz wrote: > Ken Brown via Cygwin-apps writes: >> There are currently five emacs packages: emacs-common, emacs, >> emacs-X11, emacs-w32, and emacs-lucid. The first includes things that >> are needed by each of the other four, and those four each include an >> emacs binary. The binary in the emacs package is >> /usr/bin/emacs-nox.exe. The other packages contain >> /usr/bin/emacs-X11.exe, and so on. >> >> This way of naming the packages doesn't really reflect the contents of >> the emacs package. It also means that anyone who installs emacs gets >> emacs-nox.exe, even if they plan to use one of the other three >> binaries. >> >> I would rather rename the current emacs-common package to emacs and >> the current emacs package to emacs-nox. But then the new emacs would >> have to have a way of requiring the installation of at least one of >> emacs-nox, emacs-X11, emacs-w32, or emacs-lucid. Is there any way to >> do this with our current setup machinery? > > I don't think we have the transaction capability that would be necessary > to specify that the meaning of an already existing package name (two, > actually) changes in this manner. You might have to use new package > names and place the appropriate obsoletions w.r.t. old names instead. > >> My idea three years ago was to have the new emacs package require a >> "feature" called, for instance, emacs-bin, and then have each of >> emacs-nox, emacs-X11, emacs-w32, emacs-lucid "provide" that feature. > > I have no idea if multiple packages can provide the same feature. It's > worth trying if it does what you want (you must pick at least one of > those). This seems to work, with one caveat. Suppose package P requires feature f, and packages Q, R, S,... provide f. If the user selects P and one or more of Q, R, S,..., setup is happy. But if the user simply selects P, then setup/libsolv will choose among Q, R, S,... the one whose name is alphabetically first. In the emacs case, this would be emacs-lucid, which is a stupid default. The default ought to be emacs-nox. So I can make it work if I call that package emacs-basic instead of emacs-nox. I've only tested setup so far, not calm. Jon, if you're reading this, does calm allow 'requires' and 'provides' to contain arbitrary names that are not package names? Ken