From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp1 ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms0.migadu.com with LMTPS id IO/gLSTKRGHfFgAAgWs5BA (envelope-from ) for ; Fri, 17 Sep 2021 19:02:28 +0200 Received: from aspmx1.migadu.com ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp1 with LMTPS id OKtcKSTKRGGZPQAAbx9fmQ (envelope-from ) for ; Fri, 17 Sep 2021 17:02:28 +0000 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 472C61B663 for ; Fri, 17 Sep 2021 19:02:28 +0200 (CEST) Received: from localhost ([::1]:47782 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mRHFr-0007lT-BF for larch@yhetil.org; Fri, 17 Sep 2021 13:02:27 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:45664) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mRHFU-0007jQ-KH for guix-patches@gnu.org; Fri, 17 Sep 2021 13:02:09 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:49566) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1mRHFS-0002tX-EH for guix-patches@gnu.org; Fri, 17 Sep 2021 13:02:03 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1mRHFS-0005Mt-CG for guix-patches@gnu.org; Fri, 17 Sep 2021 13:02:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#50627] [PATCH 0/2] Make wayland-protocols dependency native-input. Resent-From: Liliana Marie Prikler Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Fri, 17 Sep 2021 17:02:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 50627 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: muradm Cc: 50627@debbugs.gnu.org Received: via spool by 50627-submit@debbugs.gnu.org id=B50627.163189811420619 (code B ref 50627); Fri, 17 Sep 2021 17:02:02 +0000 Received: (at 50627) by debbugs.gnu.org; 17 Sep 2021 17:01:54 +0000 Received: from localhost ([127.0.0.1]:32879 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mRHFJ-0005MV-PP for submit@debbugs.gnu.org; Fri, 17 Sep 2021 13:01:54 -0400 Received: from mail-wr1-f65.google.com ([209.85.221.65]:41572) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mRHFF-0005MD-6s for 50627@debbugs.gnu.org; Fri, 17 Sep 2021 13:01:53 -0400 Received: by mail-wr1-f65.google.com with SMTP id w29so16232508wra.8 for <50627@debbugs.gnu.org>; Fri, 17 Sep 2021 10:01:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=message-id:subject:from:to:cc:date:in-reply-to:references :user-agent:mime-version:content-transfer-encoding; bh=7pdCEfOcmR4TvBorcdaBTU+vikcYuYiS5IzdewiDg2A=; b=gnqvf0a9VKOq25f/cgc4E36XBnDUB4tb2VhK3XVr0hs3R1VId9YOtVWEPCF2YgNFOh jCtSdnbujuLEA5Vp6qME7h8vBgqaocydv0ap1CfsJTeR2s/+Fr4BrhHPiWCZiTvDEbvk CQPS9FhRC/o7TKHb3eIlmhZNpaV8Nv54RXHV4kaPxjh0n9/20TP3pqVv6H1scQ88x1tI 9jg3hE7A7G0axT6dslZ6TL9/m/bPwJkAQU+by66P8ZFpCPLY+N2Wx6IgmYZq4WdUZCnh D+n6/3vcGwPHI2uk+hlDkS4PJOrBwhg7enzg9UCnCNA8rGk6ogyq/t7T/Ne/saWYUsUo f3bQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:message-id:subject:from:to:cc:date:in-reply-to :references:user-agent:mime-version:content-transfer-encoding; bh=7pdCEfOcmR4TvBorcdaBTU+vikcYuYiS5IzdewiDg2A=; b=oRY1qbLWk8jXuYv6Omhrr4wgJ6fniGnX2JBxxJesax2/Ia/1LqeOkuagXjcd4QuN68 +jSaaFhzXXvfH3m6hYITw3kAwmsiLW4Lq/nTtr9Mzjm8jk2A7mkqOjFcykiEs5Xitmbr cwjyP3fflWn+F6+Z7d88CRP9b3pLSMinWocPnRCqUj67BgrTzfYn7Rw8Z1C2sSMpYD+u ZQuyiIzv1ZyqgEP5XsPaWilHpIlnPCQb4S1bv51udL8RYim/KP09h/tl0dCeLLLumE9F eQ6EnXesCqMTUqMClIoK/7uCrzoeweSB4xeA+SB71OOgpmgiwWoPxTaSn7aCEsMZP+BD 08tA== X-Gm-Message-State: AOAM532tKpGwyJXj8Km+/l6olCMoOqvghuLp0/NBjqc7XcL5YSbL1Lnk 2ROmTZ2k79GzyXtKfa4yQ9Y= X-Google-Smtp-Source: ABdhPJyuLETrlFintBHN+7SjamRi2poU4GfDQ7pJ4iOTCZfypPmJSFB055j979w3Q43PXerTePMF0g== X-Received: by 2002:a5d:58cd:: with SMTP id o13mr13416008wrf.416.1631898103158; Fri, 17 Sep 2021 10:01:43 -0700 (PDT) Received: from nijino.fritz.box (85-127-52-93.dsl.dynamic.surfer.at. [85.127.52.93]) by smtp.gmail.com with ESMTPSA id n3sm7083295wmi.0.2021.09.17.10.01.42 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 17 Sep 2021 10:01:42 -0700 (PDT) Message-ID: <80631d7e460be6e07d5108c4fc886a8d568533e3.camel@gmail.com> From: Liliana Marie Prikler Date: Fri, 17 Sep 2021 19:01:41 +0200 In-Reply-To: <87bl4rdy9m.fsf@muradm.net> References: <20210916192331.29606-1-mail@muradm.net> <87ilyzg96v.fsf@muradm.net> <4bb63f130f3ec7dac628a8139c405cdc202412e9.camel@gmail.com> <875yuzfqqw.fsf@muradm.net> <830e045c54e06b0b0beaee30837f575a25cec986.camel@gmail.com> <87bl4rdy9m.fsf@muradm.net> Content-Type: text/plain; charset="UTF-8" User-Agent: Evolution 3.34.2 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit 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 ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1631898148; 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:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post:dkim-signature; bh=7pdCEfOcmR4TvBorcdaBTU+vikcYuYiS5IzdewiDg2A=; b=GdQ+/QeX+kBjIdgl36ygn2n0/N01901QjR3w8x8F49a7KlhraefO62BSkLFmUy8Z+s7ite ttxQneVgZ1H8Annf6gYbzVPuNIOvTy1LmbXFc/93/wljjeL8rn5qKP6WoEvPkHUCzfm2uB p9VNzTlgBcRFnYsV35q4R6796uxShocEiL3muk1oq3bK6hSS0SkIS2H4nyNOCm1Z0RND8H dByXmwoMSxNKpEsows4zlEl+CXd6cPecbiKkaJMhJ6OSH78aj606MXqmp70/C7TZP/kVsI DN+V67RdPogbx1zoDLhe2hT94zPzG4iNeVJ7u2A33CQ+BVBgfRCRYIeHvVppwg== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1631898148; a=rsa-sha256; cv=none; b=BaOugtZ9X096WBjQYNQIkmCWL4nQO4A+ytDXOscP8/9dSRR4NKM23I1iVEFhs0YrkYwLeu ccKMRmd8XKb/9ahLtcse4VJkAl16aNarOCK4VUFZNFIZiWulJuME0itrUy/okeeIvYglB2 I3fqVUJdMyS7ek3aulzzcuXYj8PQBqRJHkAwhM9oFKH4hC43cXcSKUW+g6p8sciQD/zXTG 05p29xoUGSuow/Yv5OvMQvIMLavTqmTErsZK2I++sGeRfkN+acNm8VOidCMhGuGA2NefKD w4vQhyaQNRWxIbJe2cEh+RPvcvXfYLMpHT+MQcltwpXGFJPJYK3YXmO1Fv2/ZQ== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gmail.com header.s=20210112 header.b=gnqvf0a9; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmail.com (policy=none); spf=pass (aspmx1.migadu.com: domain of guix-patches-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-patches-bounces@gnu.org X-Migadu-Spam-Score: -1.30 Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gmail.com header.s=20210112 header.b=gnqvf0a9; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmail.com (policy=none); spf=pass (aspmx1.migadu.com: domain of guix-patches-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-patches-bounces@gnu.org X-Migadu-Queue-Id: 472C61B663 X-Spam-Score: -1.30 X-Migadu-Scanner: scn0.migadu.com X-TUID: i84hqgJ17heP Hi, Am Freitag, den 17.09.2021, 17:11 +0300 schrieb muradm: > [...] > I suppose it is impossible, upstream patches are for source in > git, gtk+ package is being built from post-processed source tarball. > When patching upstream target is configure.ac and meson.build, when > patching source tarball, configure script it self. You can simply delete the generated configure file and Guix will bootstrap it again. So yes, you should be able to apply the upstream patch. > [...] > Btw, gtk+'s native-inputs are interesting tho.. :) In which way? > [...] > > This still doesn't explain the *native*-inputs assertion. > As you point out below: "... the package is invoked at build time > (native-inputs) ...", in cases 1, 2 and 3 above, wayland-protocols > package is needed once, when 1, 2 or 3 target is being built. No > other time wayland-protocols package is needed. This is the reason > why I decided initially to keep it in (native-inputs), because > definition of (native-inputs) as you explaining in this conversation > and as explained in Guix manual, best matches with nature of > wayland-protocols, at least in my understanding :) This might be a bit pedantic, but *invoking* and *needing* are different verbs, particularly in computing. So no, you're just confused and trying to justify your confusion. > [...] > > In other systems, it might be acceptable to have a package > > depend on some other package without said dependency being present > > at build time. Consider a shell script that wraps youtube- > > dl. Since youtube-dl exists at some point between installation and > > first use, your shell script works™ whether or not youtube-dl is > > present at build. Some packages in Guix do work that way, though > > it's a pretty rare occurrence. GStreamer is one with a legitimate > > excuse, for example. Other than that, *all* "dependencies" > > (actually inputs) are present at build time, so it makes > > no sense to distinguish between build time and run time. Guix > > knows which packages it can delete from the store by tracking > > references. What Guix needs to distinguish is whether the package > > is invoked at build time (native-inputs) or whether it needs to be > > installed alongside the package being built (propagated-inputs) > > against none of the two (regular inputs). > IMHO, this kind of judgement arises from one's experience, > demands, intuition etc. I.e. personal perception. One could just make > it working somehow, another could have experience in what is being > done, another could stress things to the limits. If it would be up to > me, I would put everything into (native-inputs) and then gradually > move things to (inputs) and (propagated-inputs) as needed (of course > I'm not doing that, I just want to show the point, that everybody's > judgement is not the same :)). This reasoning is dangerously close to the "From my point of view" line from a prequel to a famous space opera. While yes, you do get an understanding of what belongs where over time, the manual does provide guidelines that prohibit the "everything is native" approach. > From what you are saying, if it is really requires such level of > control, I suppose that there should be a chapter in a guide on how > to measure dependencies, with examples and reasoning behind them, > just like you mentioned GStreamer case, probably updated with time > from discussions like this. This could help to bring people more or > less on the same page. GStreamer doesn't even concern the native-input vs. input dispute. It concerns the having something as an input vs. not having it. > > So the next time you try to explain things to a first-timer, be > > clear that native-inputs is for tools like compilers, linkers, code > > generators *invoked* at build time. It will be less confusing > > to learn it correctly the first time round rather than having to > > argue in the mailing lists when submitting some patch. I > > understand that keeping one piece of extra information in mind can > > be hard at times and the temptation to simplify is always there, > > but in the long term no one benefits from oversimplification. > IMHO, for one it is unfair and/or unwise to treat everybody in the > same way, there could be one who barely saw compiler (if at all), > and one who did kernel development on embedded hardware :) I believe > that, especially with new comers, it is always depends on case by > case basis. I think when it comes to the point that you're packaging software for any distro, you ought to be able to distinguish tools from things that are not tools. While I'm pretty sure that there are some entities out there claiming that a bunch of XML files are a tool, I for one don't think wayland-protocols does that. Regards