From patchwork Fri Apr 8 17:01:55 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Hartmut Goebel X-Patchwork-Id: 703 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 32BF327BBEA; Fri, 8 Apr 2022 18:03:25 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.9 required=5.0 tests=BAYES_00,MAILING_LIST_MULTI, SPF_HELO_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id B1BF627BBE9 for ; Fri, 8 Apr 2022 18:03:24 +0100 (BST) Received: from localhost ([::1]:56408 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ncs15-0002TN-Ny for patchwork@mira.cbaines.net; Fri, 08 Apr 2022 13:03:23 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:53088) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ncs0k-0001q9-5m for guix-patches@gnu.org; Fri, 08 Apr 2022 13:03:02 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:41860) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1ncs0j-0005Fe-Ta for guix-patches@gnu.org; Fri, 08 Apr 2022 13:03:01 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1ncs0j-0001Tj-Pq for guix-patches@gnu.org; Fri, 08 Apr 2022 13:03:01 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#54796] [PATCH v3 00/22] Add importer for hex.pm and rebar3 build-system for Erlang Resent-From: Hartmut Goebel Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Fri, 08 Apr 2022 17:03:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 54796 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 54796@debbugs.gnu.org X-Debbugs-Original-To: guix-patches@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.16494373275612 (code B ref -1); Fri, 08 Apr 2022 17:03:01 +0000 Received: (at submit) by debbugs.gnu.org; 8 Apr 2022 17:02:07 +0000 Received: from localhost ([127.0.0.1]:35757 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ncrzr-0001SR-AF for submit@debbugs.gnu.org; Fri, 08 Apr 2022 13:02:07 -0400 Received: from lists.gnu.org ([209.51.188.17]:41326) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ncrzp-0001SK-LC for submit@debbugs.gnu.org; Fri, 08 Apr 2022 13:02:05 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:52842) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ncrzo-0000gl-5c for guix-patches@gnu.org; Fri, 08 Apr 2022 13:02:05 -0400 Received: from mout.kundenserver.de ([217.72.192.75]:39231) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ncrzm-0005Bd-5C for guix-patches@gnu.org; Fri, 08 Apr 2022 13:02:03 -0400 Received: from hermia.goebel-consult.de ([79.211.184.115]) by mrelayeu.kundenserver.de (mreue107 [212.227.15.183]) with ESMTPSA (Nemesis) id 1MpDa5-1oKhsQ2x3f-00qicP for ; Fri, 08 Apr 2022 19:01:57 +0200 Received: from lenashee.fritz.box (lenashee.goebel-consult.de [192.168.110.2]) by hermia.goebel-consult.de (Postfix) with ESMTP id AE5B55F535; Fri, 8 Apr 2022 19:02:05 +0200 (CEST) From: Hartmut Goebel Date: Fri, 8 Apr 2022 19:01:55 +0200 Message-Id: X-Mailer: git-send-email 2.30.2 MIME-Version: 1.0 X-Provags-ID: V03:K1:lmhsSRxWOy6S+nWuMoNARpIdRiPaZQ2rMw2l+LxkjLSwhNuqOBl uYQqi4WQo3ZDAFm5LNGzLmg5XnG94ILShhUMxpMdfrGiUcFv/M43L53DDlXilb1XN1hIM/c IjCcNn5Ih0YWoCm8PkoNvoXHnl6Q56kiefRMumgBniJioM9yIOhHsx0mmGOgX0NTiwavn3B SrBR3rs4CYeWxDrzJKN5w== X-UI-Out-Filterresults: notjunk:1;V03:K0:yNQ3Ah5nhT8=:i7ofFy7H/JC855SfoukRCl hHI0h1/YjQ5gaE0foABtfUb3IrGTuyR4AoHaCNqhQD/cxoQJtiZfWJqlXsuPqfaBcsIRtu9tu VCaZoBS6l1F4XYX02kZCbHb7OfGoSBPQ8EFPYNlastCH7XaAZQ/r5wRHr6A6s1cbLRD8BfFe3 WLDn2RaUUSfr3GQ+UkuordLdyPbry8xQTpmt9tH/EhCa7O4yFN6AJjTIXBTcZNjSBlJHegnyu MlOu+vMpJpP6P3EIufKVK2R5F+ALLkzWqKZxFS5tLQTFGsztS9X45feLEztz0eaM1RA6p9xuC Tr9/RgiemDdBoGeHNOvEjawCDoYL1/fsfk8AuwHB60HKPnYTassMyqE2agq2r/QkrlSDnKXb1 ER9mGMOOLcvrWd4WhFUDmfywlezePUbCyLhVBkTR7284B+Mdlc3RqRhavWjr+WB+dseITaGf9 DyELh+yvWlPpZrfengv87cQTwnNoFWFhEagl8fMH9qnZZv9u9be+qo3OqlMQnKX1GWZoXbkyX YB+Gp+U7R3EtKV3VSkSRvzSd03jd1KyMxeYobszr60P7qrv/STfDmYS3nbFVQmxEoXbGmTpNS eUuIqtK7wdrf6GC2nIvuP9NW3pUnUJwOEQOnH3VivTLxMTSq/7Yy3TeOLUI/KUrpTh9W5LIJZ mSZ/X2OSMNkraHOUUfSgoH4bXyNfuIJU21ZsQ8rLX7YVMKYgxnCXErknTjBe4xD/1WXj8Kz2Q eHxgPrMS3KT1SiOg Received-SPF: none client-ip=217.72.192.75; envelope-from=h.goebel@crazy-compilers.com; helo=mout.kundenserver.de X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_NONE=0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham 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+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" X-getmail-retrieved-from-mailbox: Patches Hi, this is an updated version of #42180 and #51061 (both are closed already). Notable changes are: * the „extracting downloader“ and „hexpm-fetch” are gone * documentation added for both the importer and the rebar3-build-system * tests added for the importer Some remarks on the patches: * First patch adds a file guix/hexpm-download.scm, containing definitions for the hex.pm repository. These are combined in this module here since different build-systems (will) use it. * The importer tries to detect the build system to be used. For Elexir packages it creates package definitions using the “mix-build-system‘. This I will add later (WIP). * Next there patches provide the packages required rebar3, rebar3 itself and some plugins for rebar3. Open question: * Shall the build system actually be called „rebar*3*“ or just „rebar“? There is also a build-tool „rebar2“, which is obsoltete and not supported by this build-system. Anyhow, somewhen in the future there might be some „rebar4“, which we might be able to cover with the same build-system. WDYT? Hartmut Goebel (22): import: Add hex.pm importer. gnu: Add erlang-cf. gnu: Add erlang-certifi. gnu: Add erlang-erlware-commons. gnu: Add erlang-cth-readable. gnu: Add erlang-bbmustache. gnu: Add erlang-getopt. gnu: Add erlang-eunit-formatters. gnu: Add erlang-providers. gnu: Add erlang-parse-trans. gnu: Add erlang-hex-core. gnu: Add erlang-ssl-verify-fun. gnu: Add erlang-relx. gnu: Add erlang-edown. gnu: Add erlang-jsone. gnu: Add erlang-proper. gnu: Add erlang-covertool. gnu: Add rebar3. gnu: Add rebar3-raw-deps. gnu: Add rebar3-git-vsn. gnu: Add rebar3-proper. build-system: Add 'rebar3-build-system'. Makefile.am | 6 + doc/guix.texi | 70 ++++- gnu/packages/erlang.scm | 488 +++++++++++++++++++++++++++++ guix/build-system/rebar3.scm | 143 +++++++++ guix/build/rebar3-build-system.scm | 147 +++++++++ guix/hexpm-download.scm | 40 +++ guix/import/hexpm.scm | 347 ++++++++++++++++++++ guix/scripts/import.scm | 2 +- guix/scripts/import/hexpm.scm | 109 +++++++ po/guix/POTFILES.in | 1 + tests/hexpm.scm | 257 +++++++++++++++ 11 files changed, 1608 insertions(+), 2 deletions(-) create mode 100644 guix/build-system/rebar3.scm create mode 100644 guix/build/rebar3-build-system.scm create mode 100644 guix/hexpm-download.scm create mode 100644 guix/import/hexpm.scm create mode 100644 guix/scripts/import/hexpm.scm create mode 100644 tests/hexpm.scm