From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Zelphir Kaltstahl Newsgroups: gmane.lisp.guile.user Subject: guile-hall packaging guide Date: Mon, 22 Feb 2021 12:34:42 +0100 Message-ID: <1fa2d49b-51db-fc4e-4888-80831fbc0150@posteo.de> References: <11206998.46ALo4VoAQ@terra> <02902ff9-1585-a453-4e36-c9a731eee6fe@posteo.de> <6330005.mNMjihpRT5@terra> <87wnv6xulu.fsf@gmail.com> <87ft1pfsfs.fsf@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="40532"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 Cc: guile-user@gnu.org To: alex.sassmannshausen@gmail.com Original-X-From: guile-user-bounces+guile-user=m.gmane-mx.org@gnu.org Mon Feb 22 12:35:03 2021 Return-path: Envelope-to: guile-user@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1lE9UT-000AMs-TT for guile-user@m.gmane-mx.org; Mon, 22 Feb 2021 12:35:02 +0100 Original-Received: from localhost ([::1]:54394 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lE9US-0004sC-TM for guile-user@m.gmane-mx.org; Mon, 22 Feb 2021 06:35:00 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:36796) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lE9UI-0004s5-DP for guile-user@gnu.org; Mon, 22 Feb 2021 06:34:50 -0500 Original-Received: from mout02.posteo.de ([185.67.36.66]:37755) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lE9UF-0007Zw-L0 for guile-user@gnu.org; Mon, 22 Feb 2021 06:34:50 -0500 Original-Received: from submission (posteo.de [89.146.220.130]) by mout02.posteo.de (Postfix) with ESMTPS id 09C912400FD for ; Mon, 22 Feb 2021 12:34:43 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.de; s=2017; t=1613993684; bh=CUrQa3gwE2Jgy+wEnCv830hWAIY/bLAciegcTuL6vhs=; h=Subject:To:Cc:From:Date:From; b=l4n2CiQq2wpEq5/22yOiJj8RHpZgq5llYzdngHprLrYoawfJQIuUi9qhjA112IJIC do3nEaodacLHRf+WnZl7kWjvuD/Xxim618qZxkm/OjoIBkktxDJOqzimrGenIkSH4c v7uZYhdlT1i1xBQNhSL6FnJSK9SheBqvBFnn4kjQb7rG1vqMyik7/Z+SZg73r7cQso Xn72GOcpIQM+Mi15rQt7sTGrs2zh+hTN5ILGmYwAWEV95ndTaj3mkNGeQIyTsjcn13 wkFj48uNWt3wUxEkiK07bQh8C/SoeosFqaWQlPzIXQqYepbs+qGfRHYw/yvyF2TaFA VjDWwWisN0UuQ== Original-Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4Dkg830FT6z6tmH; Mon, 22 Feb 2021 12:34:42 +0100 (CET) X-Tagtoolbar-Keys: D20210222123442261 In-Reply-To: <87ft1pfsfs.fsf@gmail.com> Content-Language: en-US Received-SPF: pass client-ip=185.67.36.66; envelope-from=zelphirkaltstahl@posteo.de; helo=mout02.posteo.de X-Spam_score_int: -43 X-Spam_score: -4.4 X-Spam_bar: ---- X-Spam_report: (-4.4 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: guile-user@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: General Guile related discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guile-user-bounces+guile-user=m.gmane-mx.org@gnu.org Original-Sender: "guile-user" Xref: news.gmane.io gmane.lisp.guile.user:17303 Archived-At: Hi Alex! I've begun writing the guide for using guile-hall to package GNU Guile libraries/programs: https://notabug.org/ZelphirKaltstahl/gnu-guile-gnu-guix-packaging-guide If you would like to take a look and if you see any mistakes, imprecise terminology, missing explanations or anything, please let me know and I will try to improve it. Still have to get to the tests with the master branch and all that. I guess I will first get a first version of that guide done and then use it to go through the steps testing the up-to-date version of guile-hall. Best regards, Zelphir On 2/21/21 2:42 PM, Alex Sassmannshausen wrote: > Hi Zelphir, > > Some notes inline: > > Zelphir Kaltstahl writes: > >> I am willing to test/try some more. > Great, that's really good to hear! > >> When you say "since commit xyz", do you mean commit of guile-hall >> itself, or a commit of Guix, where an updated version of guile-hall is >> available? > I mean in the guile-hall repository. But you should be able to do: > guix install guile-hall --with-commit="guile-hall=HASH" > to get the right version. > > I *think* it should just build and work. > >> How would I test the master branch version? I would guess install it in >> a guix environment and then use that environment to try and convert a >> project. > Yeah, that would work too. > > You should even be able to combine the two and go with: > guix environment --ad-hoc guile guile-hall --with-commit="guile-hall=HASH" > >> What would you suggest testing? > I think it would be best if you tried using the convert command and see > whether it gets you better results this time around. Outside of that, > probably playing with the new --skip option and `scan' arguments might > be useful and interesting for you. > >> It was quite OK to edit hall.scm in an editor. Perhaps, if a project is >> significantly bigger than my project, it would become cumbersome, but >> for me personally it is fine, now that I know what goes in there and how >> it needs to look. > Good to hear. The spec was always meant to be human readable. Still, the > new scan options might make it easier to add additional files > gradually. > >> I have not yet begun writing a guide for converting a project. Hopefully >> I'll be able to do so soon. > That would be very interesting to see! > > Best wishes, > > Alex > >> Best regards, >> Zelphir >> >> On 2/17/21 10:17 PM, Alex Sassmannshausen wrote: >>> Hi Zelphir and Tim, >>> >>> I am the author of guile hall — apologies for only now getting into this >>> thread. I'm afraid I have been somewhat distracted with other things. >>> >>> First of all I want to echo what others have said — thank you very much >>> for your detailed descriptions of what exactly happened when you tried >>> to migrate the project to guile hall. >>> >>> The aim of the project is to massively reduce the barrier of entry to >>> creating new, portable, high quality guile projects — and to contribute >>> them to Guix. Your descriptions suggest it's not there yet! >>> >>> In any case, some comments inline: >>> >>> Zelphir Kaltstahl writes: >>> >>>> Hello Tim! >>>> >>>> Thank you, it works now! >>>> >>>> Removing the duplicate entry of `fslib` in hall.scm fixed it. >>> Fwiw, since commit ac76541a this issue can be automatically resolved by >>> running scan once more: it should remove duplicate entries in hall.scm. >>> >>>> Regarding the license: OK, I have no problem moving my license to >>>> `COPYING`. However, I still think, that it should not put GPL there, >>>> when I specified AGPL in `hall.scm`. This looks like a hardcoded >>>> fallback, which does not take the license specification into account. >>>> Something like: "If there is no `COPYING` file just put GPL into a file >>>> `COPYING`." instead of "If there is no `COPYING` file just put >>>> into a file `COPYING`.". I could be >>>> wrong though, as I do not know anything about guile-hall's internals. >>> This is odd — Hall should respect your license choice. It should, for >>> (A)GPL licenses automatically download those from the internet and >>> install them in COPYING. There was an issue with those licenses hiding >>> behind a 302 status code, which resulted in fallback text being loaded >>> in COPYING. But even that fallback text should respect your license. >>> >>> I just tried changing my license to AGPLv3+ in one of my projects, >>> running hall from Master (the most recent commit fixes the 302 license >>> issue), and it's fetching the license correctly. >>> >>> I'd be interested in seeing what your experience is if you are willing >>> to try? >>> >>> In any case, Hall is undergoing active development, and I'm hoping to >>> have a fresh release end of this month, with a whole bunch of >>> improvements and bug fixes. Definitely feel free to drop issues to me >>> directly by email or on gitlab (though some of the ones you raised have >>> been fixed, like the unknown filetype issue). >>> >>> Best wishes, >>> >>> Alex >>> >>>> Follow up question would be, how to bring the package into the guix >>>> repository, but I am guessing, that it will be answered at >>>> https://guix.gnu.org/cookbook/en/html_node/Direct-checkout-hacking.html, >>>> which I have not read yet. >>>> >>>> Another question is, whether I should put you into the authors file and >>>> write something like "help with packaging" there. What is the common >>>> practice? >>>> >>>> Best regards, >>>> Zelphir >>>> >>>> On 2/16/21 5:48 PM, Tim Van den Langenbergh wrote: >>>>> Err, looking at your hall.scm file, you have the fslib file added to your >>>>> libraries twice. >>>>> >>>>> Guix environment is not needed if you have all the requirements for building >>>>> the package installed locally, but if you want to distribute your package it's >>>>> good practise to ensure it builds in a clean environment (see also https:// >>>>> guix.gnu.org/manual/en/html_node/Invoking-guix-environment.html for more >>>>> information about Guix environments). >>>>> >>>>> The "COPYING" file is hardcoded as license file in Hall, to ensure compatibility >>>>> with GNU standards: https://www.gnu.org/licenses/gpl-howto.en.html >>>>> >>>>> Hope this helps, >>>>> >>>>> Vale >>>>> >>>>> -Tim >>>>> >>>>> -- repositories: https://notabug.org/ZelphirKaltstahl