From debbugs-submit-bounces@debbugs.gnu.org Thu Mar 03 04:45:18 2022 Received: (at 54216) by debbugs.gnu.org; 3 Mar 2022 09:45:19 +0000 Received: from localhost ([127.0.0.1]:41478 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nPi1O-0001vV-Ir for submit@debbugs.gnu.org; Thu, 03 Mar 2022 04:45:18 -0500 Received: from mail-ej1-f46.google.com ([209.85.218.46]:33616) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nPi1M-0001vG-Ph for 54216@debbugs.gnu.org; Thu, 03 Mar 2022 04:45:17 -0500 Received: by mail-ej1-f46.google.com with SMTP id kt27so9467319ejb.0 for <54216@debbugs.gnu.org>; Thu, 03 Mar 2022 01:45:16 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=sender:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=WE/QBGbwtrwixbmVr1qs58V3rb2LHSH68DAAwVGwcpE=; b=kAd3xymRAMkKWAevGyEoBfciYgWvzxNF8p/Wg+LDroxL+Ain1eW11vr01vHX4V4CE1 PA5a0PwiywOhJ9zrnx6tSy+uRYa3re5bZPPIW0v46uYicxh4CEfuKO8CbyvDsz2XQtlu /dpmNY685gF6E4hf3oJtdpJ0I9KrJDURv/Qus+KsxtL5UmG54Tn8XsZ52eO8FxZRBWL4 L77BW1DDLVdYaWGPw1U7wFEYhZju3vrC3xyPa2O27dxasHtT3fuMmb44PDio060McYok MjhhhGcNM0kp/R3WjCVfvU1TYz020bp5KHFBJYPcNL2+zAyXD1D+skZtIMwsxY/P7Y1N ageA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :mime-version:content-transfer-encoding; bh=WE/QBGbwtrwixbmVr1qs58V3rb2LHSH68DAAwVGwcpE=; b=DhwYCFh0doMOnWoqmclh8D0/fAG1N6N3Q4yK7WS2HYWkAZ8YmyCtXBxPoSIIfift8e xujGIj5M4h3RXPBqNxD9SESC4fFGSpC49G0NCX7LgB9AdEKv8Cfic/mlVPTyVV8LRGKa geeipjFHiHSPjeK2hap40YDRvRlWMiEbar7M0f4wy/JTRUXeQUBL0N7/PvN80paN5MYs Avncf7LFmpwcuVB7YZuC2Lf9ZYk83qHU+W3z4RtAgeS7n6CmYINoXiVxgMWGwVt/sZeD nKiJjZQkpG5z7rjnRQ/gCqt16L5WBKq799Y+N1JxSh/1P3KFbNn5XleF9zFtbnK/M2xO 1G+Q== X-Gm-Message-State: AOAM530CNkKZ20FsgFs2gH5TPZsOt6pswb0GxjNHj+xWzekWs11cQcaM THH5joGtJhbCfTw/24TbdzvR0QE0Nhs= X-Google-Smtp-Source: ABdhPJzF6EP2jC7Iu0aBQ4FzL0EAxnr85s4+BViHPgM1DIGLnp77+K3pEO8NWzbRemtd1y03cTJt0g== X-Received: by 2002:a17:906:4fd2:b0:6d9:f7b6:964a with SMTP id i18-20020a1709064fd200b006d9f7b6964amr5594308ejw.474.1646300710548; Thu, 03 Mar 2022 01:45:10 -0800 (PST) Received: from lelap.local (catv-89-132-245-188.catv.fixed.vodafone.hu. [89.132.245.188]) by smtp.gmail.com with ESMTPSA id e24-20020a170906045800b006da975173b5sm174209eja.141.2022.03.03.01.45.09 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 03 Mar 2022 01:45:09 -0800 (PST) From: Attila Lendvai To: 54216@debbugs.gnu.org Subject: [PATCH v3] gnu: shepherd-for-guix: New package for use in Guix. Date: Thu, 3 Mar 2022 10:43:36 +0100 Message-Id: <20220303094335.8926-1-attila@lendvai.name> X-Mailer: git-send-email 2.34.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: 0.5 (/) X-Debbugs-Envelope-To: 54216 Cc: Attila Lendvai X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.5 (/) This also updates shepherd-for-guix to the latest commit, so that the two variants have a different version. * gnu/packages/admin.scm (shepherd-for-guix): New variable. --- v3: as per the discussion, implement the patching through a phase. once it gets merged, i'll prepare another patch to staging that cleans this all up by moving most of this into the parent package, and also switch it to build from git. gnu/packages/admin.scm | 48 +++++++++++++++++++++++++++++++++++++++ gnu/services/shepherd.scm | 2 +- 2 files changed, 49 insertions(+), 1 deletion(-) diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index c8f91aab0d..dbceaca5e5 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -307,6 +307,54 @@ (define-public shepherd (license license:gpl3+) (home-page "https://www.gnu.org/software/shepherd/"))) +;; This is the Shepherd package used by Guix. This package variant +;; allows us to add new features and fix bugs in Shepherd and use the +;; new features in Guix, without having to go through the 'staging' +;; branch, and without having to wait for a new release, see +;; [TODO] in the manual. +(define-public shepherd-for-guix + (let* ((version "0.8.1") + ;; If it's an unreleased commit: + (commit "7c380590164ea8ee40de46059d07e08a48963577") + ;; Use the below form if it's a release, and also set REVISION to #f. + ;; (commit (string-append "v" version)) + (revision "1")) + (package + (inherit shepherd) + (version (if revision + (git-version version revision commit) + version)) + (source + (origin + (inherit (package-source shepherd)) + (method git-fetch) + (uri (git-reference + ;; Build from git and add Autotools inputs, to make developing + ;; Shepherd easier. It enables easier package inheritance. + (url "https://git.savannah.gnu.org/git/shepherd.git/") + (commit commit))) + (snippet #f) ; TODO delete this once parent is refactored. + (sha256 + (base32 + "1hgkbl3fyzwi5vw63kbkswnf3viyfl52c5dzkx7vbkr4sj5ysz1g")))) + ;; TODO merge this back into the parent with a patch to staging. + (arguments + (append + (package-arguments shepherd) + '(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-source + (lambda _ + ;; Build with -O1 to work around . + (substitute* "Makefile.am" + (("compile --target") + "compile -O1 --target")))))))) + (native-inputs + (modify-inputs (package-native-inputs shepherd) + (prepend autoconf automake gettext-minimal help2man texinfo))) + (description "A package variant for use in Guix. It helps lowering +the build time of Guix when working on Shepherd.")))) + (define-public guile2.2-shepherd (package (inherit shepherd) diff --git a/gnu/services/shepherd.scm b/gnu/services/shepherd.scm index b44dbf9d9f..991194ffe6 100644 --- a/gnu/services/shepherd.scm +++ b/gnu/services/shepherd.scm @@ -88,7 +88,7 @@ (define-record-type* shepherd-configuration make-shepherd-configuration shepherd-configuration? (shepherd shepherd-configuration-shepherd - (default shepherd)) ; file-like + (default shepherd-for-guix)) ; file-like (services shepherd-configuration-services (default '()))) ; list of -- 2.34.0