X-Loop: help-debbugs@HIDDEN Subject: [bug#72514] [PATCH v1 0/2] Add perp support in guix-install.sh for Dragora. Resent-From: Denis 'GNUtoo' Carikli <GNUtoo@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: guix-patches@HIDDEN Resent-Date: Wed, 07 Aug 2024 15:02:02 +0000 Resent-Message-ID: <handler.72514.B.17230428734388 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: report 72514 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 72514 <at> debbugs.gnu.org, selk@HIDDEN Cc: Denis 'GNUtoo' Carikli <GNUtoo@HIDDEN> X-Debbugs-Original-To: guix-patches@HIDDEN, =?UTF-8?Q?Mat=C3=ADas?= Fonzo <selk@HIDDEN> Received: via spool by submit <at> debbugs.gnu.org id=B.17230428734388 (code B ref -1); Wed, 07 Aug 2024 15:02:02 +0000 Received: (at submit) by debbugs.gnu.org; 7 Aug 2024 15:01:13 +0000 Received: from localhost ([127.0.0.1]:34896 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sbiA5-00018h-2s for submit <at> debbugs.gnu.org; Wed, 07 Aug 2024 11:01:13 -0400 Received: from lists.gnu.org ([209.51.188.17]:56562) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <GNUtoo@HIDDEN>) id 1sbiA2-00018Y-Tb for submit <at> debbugs.gnu.org; Wed, 07 Aug 2024 11:01:11 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <GNUtoo@HIDDEN>) id 1sbi9c-0003sT-D7 for guix-patches@HIDDEN; Wed, 07 Aug 2024 11:00:45 -0400 Received: from cyberdimension.org ([79.143.250.36] helo=rockpro64.cyberdimension.org) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_CHACHA20_POLY1305:256) (Exim 4.90_1) (envelope-from <GNUtoo@HIDDEN>) id 1sbi9X-0000Q6-IZ for guix-patches@HIDDEN; Wed, 07 Aug 2024 11:00:44 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; s=dkim; bh=w4NcOYMKnAMD/Mc 8rhJvdBNr7mKTe5K486tdzLdyjYA=; h=date:subject:cc:to:from; d=cyberdimension.org; b=KycZ5+V7aSpWqBbAcT4jw3c9j0764glY2SusbKwNxCDPlo rY6CbGv0k9hdQdrDsrpZuKqjM5b2H76JKPerDAPKD8+hBnU/28ltk/t7hPC0K0n34SHRy/ KMdcyjeN7IrFnFTjmTvVFDURld0BkNqn8p77flT+Ti7MOxDtSJTvtEqgaa1qq8fXf9vfjX mUROlQHzyX/6FImrZ4ROe4/i560wJAOHxcOEKJ2A49rx/+YUJZc3LzduajWe4DRP7u29vU 65W7wL5oYJdkM7sEkgo49uE3fsistSxUhZKAiM65qQyqemaKw1hSio8VJqekhR9C1RtLE8 iqby0wg/Rxc6gcnw== Received: from localhost.localdomain (localhost [127.0.0.1]) by rockpro64.cyberdimension.org (OpenSMTPD) with ESMTP id a784e9ec; Wed, 7 Aug 2024 15:00:31 +0000 (UTC) From: Denis 'GNUtoo' Carikli <GNUtoo@HIDDEN> Date: Wed, 7 Aug 2024 17:00:02 +0200 Message-ID: <cover.1723041383.git.GNUtoo@HIDDEN> X-Mailer: git-send-email 2.45.2 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Received-SPF: pass client-ip=79.143.250.36; envelope-from=GNUtoo@HIDDEN; helo=rockpro64.cyberdimension.org X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.4 (-) X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -2.4 (--) Hi, When installing guix through guix-install.sh in Dragora the init system is not detected, so this serie fixes that. I also included a package for perp itself in case that can help getting familiar with it to review the patch for guix-install.sh. I've not tested if it works on top of Guix though, but it's handy as the manuals are present for instance. Also note that for the perp service for guix-install.sh, I took inspiration from the perp services inside the examples directory in perp source code. As for the guix-install.sh I've tested various pieces separately but not together as doing that would require the patch to be in Guix in the fist place: * I've tested that the guix daemon is started and stopped correctly by guix-install.sh once the files are in the right place. * I've tested that the logs are produced. They end up in /var/log/guix-daemon/current. * I've also tested (without guix-install.sh) that 'perpctl A guix-daemon' really starts the service and that then at the next boot the service is running too. I also tested 'perpctl X guix-daemon' in the same way. * I've tested that /etc/perp/guix-daemon/{rc.main,rc.log} are in the right place. * I've tested that the variables are passed to the guix-daemon by replacing it with very simple C code below that prints variables, and by also exporting TESTGNUTOO (and assigining it some value) to make sure that the variable is really passed by /etc/perp/rc.main and not by something else like bashrc. /* * Copyright © 2024 Denis 'GNUtoo' Carikli <GNUtoo@HIDDEN> * * This file is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3 of the License, or (at * your option) any later version. * * This file is distributed in the hope that it will be useful, but * WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this file. If not, see <http://www.gnu.org/licenses/>. */ #include <stdio.h> #include <string.h> #include <unistd.h> extern char **environ; int print_entry(char *var1, char *var2) { int i; char *curr; for (i=0; ; i++) { curr = environ[i]; if (curr == NULL) break; if (!strncmp(var1, curr, strlen(var1))) printf("%s: [%s]\n", var1, curr); else if (!strncmp(var2, curr, strlen(var2))) printf("%s: [%s]\n", var2, curr); } } int main() { while(1) { print_entry("GUIX_LOCPATH", "TESTGNUTOO"); sleep(1); } } Denis 'GNUtoo' Carikli (2): gnu: Add perp. guix-install.sh: Support perp. .gitignore | 2 ++ etc/guix-install.sh | 25 +++++++++++++++++++++++ etc/perp/rc.log.in | 24 ++++++++++++++++++++++ etc/perp/rc.main.in | 45 ++++++++++++++++++++++++++++++++++++++++++ gnu/packages/admin.scm | 33 +++++++++++++++++++++++++++++++ nix/local.mk | 17 +++++++++++++++- 6 files changed, 145 insertions(+), 1 deletion(-) create mode 100644 etc/perp/rc.log.in create mode 100644 etc/perp/rc.main.in base-commit: 5e567587dd4abf51f9a6fa44f5a852dde1115ce9 -- 2.45.2
Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.505 (Entity 5.505) Content-Type: text/plain; charset=utf-8 X-Loop: help-debbugs@HIDDEN From: help-debbugs@HIDDEN (GNU bug Tracking System) To: Denis 'GNUtoo' Carikli <GNUtoo@HIDDEN> Subject: bug#72514: Acknowledgement ([PATCH v1 0/2] Add perp support in guix-install.sh for Dragora.) Message-ID: <handler.72514.B.17230428734388.ack <at> debbugs.gnu.org> References: <cover.1723041383.git.GNUtoo@HIDDEN> X-Gnu-PR-Message: ack 72514 X-Gnu-PR-Package: guix-patches X-Gnu-PR-Keywords: patch Reply-To: 72514 <at> debbugs.gnu.org Date: Wed, 07 Aug 2024 15:02:02 +0000 Thank you for filing a new bug report with debbugs.gnu.org. This is an automatically generated reply to let you know your message has been received. Your message is being forwarded to the package maintainers and other interested parties for their attention; they will reply in due course. Your message has been sent to the package maintainer(s): guix-patches@HIDDEN If you wish to submit further information on this problem, please send it to 72514 <at> debbugs.gnu.org. Please do not send mail to help-debbugs@HIDDEN unless you wish to report a problem with the Bug-tracking system. --=20 72514: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D72514 GNU Bug Tracking System Contact help-debbugs@HIDDEN with problems
X-Loop: help-debbugs@HIDDEN Subject: [bug#72514] [PATCH v1 1/2] gnu: Add perp. Resent-From: Denis 'GNUtoo' Carikli <GNUtoo@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: , guix-patches@HIDDEN Resent-Date: Wed, 07 Aug 2024 15:41:02 +0000 Resent-Message-ID: <handler.72514.B72514.17230452179737 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: followup 72514 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 72514 <at> debbugs.gnu.org, =?UTF-8?Q?Mat=C3=ADas?= Fonzo <selk@HIDDEN> Cc: Denis 'GNUtoo' Carikli <GNUtoo@HIDDEN>, ( <paren@HIDDEN>, Christopher Baines <guix@HIDDEN>, Ludovic =?UTF-8?Q?Court=C3=A8s?= <ludo@HIDDEN>, Mathieu Othacehe <othacehe@HIDDEN>, Simon Tournier <zimon.toutoune@HIDDEN>, Tobias Geerinckx-Rice <me@HIDDEN>, jgart <jgart@HIDDEN> X-Debbugs-Original-Xcc: ( <paren@HIDDEN>, Christopher Baines <guix@HIDDEN>, Ludovic =?UTF-8?Q?Court=C3=A8s?= <ludo@HIDDEN>, Mathieu Othacehe <othacehe@HIDDEN>, Simon Tournier <zimon.toutoune@HIDDEN>, Tobias Geerinckx-Rice <me@HIDDEN>, jgart <jgart@HIDDEN> Received: via spool by 72514-submit <at> debbugs.gnu.org id=B72514.17230452179737 (code B ref 72514); Wed, 07 Aug 2024 15:41:02 +0000 Received: (at 72514) by debbugs.gnu.org; 7 Aug 2024 15:40:17 +0000 Received: from localhost ([127.0.0.1]:34946 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sbils-0002Wt-Fg for submit <at> debbugs.gnu.org; Wed, 07 Aug 2024 11:40:17 -0400 Received: from cyberdimension.org ([79.143.250.36]:53774 helo=rockpro64.cyberdimension.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <GNUtoo@HIDDEN>) id 1sbilp-0002Wc-Aq for 72514 <at> debbugs.gnu.org; Wed, 07 Aug 2024 11:40:14 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; s=dkim; bh=42GjSXIG9TbtM69 /r/UzTUCeJ7KPhMyTGMcuoOzGzAw=; h=references:in-reply-to:date:subject: cc:to:from; d=cyberdimension.org; b=ZsKKOGyW1kCypxn8sl8ttBiOtJO6PvIJB+ 165lOsnlQHdvZBg/pDuoCuLoe2WLFOEBi0RUGChm5QO7pc0R5w86NzEsq3uT9OWmNgcLaP E72pShua5SEZ/M88vGC+rP6G/GIwnyFt+Hfz3Wdh6hhSwMQcexqqLaD6twvwznz9mFIC4Q B/MUapQHNYIsh8+9hoXtz4yhMPmso5DoFrFnTeXRKYoWRr2HeHdCZW9M4d/CB2OERVUH0h x5mJbdMZvFh5EXui1t2uMO7jlO3qSddiwh//BMWuLkWnrAuN8RJXPJLWY7X4GVi77bIeoD zNEq9K1igibGrX7FVp78chelkJZA== Received: from localhost.localdomain (localhost [127.0.0.1]) by rockpro64.cyberdimension.org (OpenSMTPD) with ESMTP id 6eedce5c; Wed, 7 Aug 2024 15:39:46 +0000 (UTC) From: Denis 'GNUtoo' Carikli <GNUtoo@HIDDEN> Date: Wed, 7 Aug 2024 17:39:18 +0200 Message-ID: <ffba3508180b0b973b8b9982263d58d177c2dd4c.1723041383.git.GNUtoo@HIDDEN> X-Mailer: git-send-email 2.45.2 In-Reply-To: <cover.1723041383.git.GNUtoo@HIDDEN> References: <cover.1723041383.git.GNUtoo@HIDDEN> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) * gnu/packages/admin.scm (perp): New variable. Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@HIDDEN> Change-Id: I6a20a7f1f7103eeea980612a046531d556192356 --- gnu/packages/admin.scm | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index 113b8e2481..71149393ae 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -727,6 +727,39 @@ (define-public facter (home-page "https://github.com/puppetlabs/facter") (license license:expat))) +(define-public perp + (package + (name "perp") + (version "2.07") + (source + (origin + (method url-fetch) + (uri + (string-append + "http://b0llix.net/perp/distfiles/perp-" version ".tar.gz")) + (sha256 + (base32 "05aq8xj9fpgs468dq6iqpkfixhzqm4xzj5l4lyrdh530q4qzw8hj")))) + (build-system gnu-build-system) + (arguments + (list + #:tests? #f ;no tests + #:make-flags + #~(list + "BINDIR = /bin" + "SBINDIR = /sbin" + "MANDIR = /share/man" + (string-append "DESTDIR=" #$output)) + #:phases #~(modify-phases %standard-phases (delete 'configure)))) + (home-page "http://b0llix.net/perp/") + (synopsis "Persistent process supervisor and service managment framework") + (description + "The perp package provides a set of daemons and utilities to reliably +start, monitor, log, and control a collection of persistent processes. It is +portable across a wide variety of unix-like operating systems. It does not +replace the Process 1 (/sbin/init).") + (license + (license:fsdg-compatible "http://b0llix.net/perp/site.cgi?page=LICENSE")))) + (define-public ttyload (let ((revision "1") (commit "f9495372801ce4b4dad98ad854203e694c31c1eb")) -- 2.45.2
X-Loop: help-debbugs@HIDDEN Subject: [bug#72514] [PATCH v1 2/2] guix-install.sh: Support perp. Resent-From: Denis 'GNUtoo' Carikli <GNUtoo@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: , guix-patches@HIDDEN Resent-Date: Wed, 07 Aug 2024 15:41:03 +0000 Resent-Message-ID: <handler.72514.B72514.17230452189747 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: followup 72514 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 72514 <at> debbugs.gnu.org, =?UTF-8?Q?Mat=C3=ADas?= Fonzo <selk@HIDDEN> Cc: Denis 'GNUtoo' Carikli <GNUtoo@HIDDEN>, ( <paren@HIDDEN>, Christopher Baines <guix@HIDDEN>, Ludovic =?UTF-8?Q?Court=C3=A8s?= <ludo@HIDDEN>, Mathieu Othacehe <othacehe@HIDDEN>, Simon Tournier <zimon.toutoune@HIDDEN>, Tobias Geerinckx-Rice <me@HIDDEN>, jgart <jgart@HIDDEN> X-Debbugs-Original-Xcc: ( <paren@HIDDEN>, Christopher Baines <guix@HIDDEN>, Ludovic =?UTF-8?Q?Court=C3=A8s?= <ludo@HIDDEN>, Mathieu Othacehe <othacehe@HIDDEN>, Simon Tournier <zimon.toutoune@HIDDEN>, Tobias Geerinckx-Rice <me@HIDDEN>, jgart <jgart@HIDDEN> Received: via spool by 72514-submit <at> debbugs.gnu.org id=B72514.17230452189747 (code B ref 72514); Wed, 07 Aug 2024 15:41:03 +0000 Received: (at 72514) by debbugs.gnu.org; 7 Aug 2024 15:40:18 +0000 Received: from localhost ([127.0.0.1]:34948 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sbilu-0002X9-4J for submit <at> debbugs.gnu.org; Wed, 07 Aug 2024 11:40:18 -0400 Received: from cyberdimension.org ([79.143.250.36]:53774 helo=rockpro64.cyberdimension.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <GNUtoo@HIDDEN>) id 1sbilq-0002Wc-TH for 72514 <at> debbugs.gnu.org; Wed, 07 Aug 2024 11:40:16 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; s=dkim; bh=JWykyVKxDT+F4GQ ULmDoN9nytmlcvXrRkgP4YwCftww=; h=references:in-reply-to:date:subject: cc:to:from; d=cyberdimension.org; b=GDtZGMcI/0Ggxr73mUtnMqdpdjap1Emixc BGb/VUUM3y9Cgt2zW2eVYV6qPVGN4j7vHtgwWlk7S5u5ppYNcYn3PnVwFrpB6sZdAcZvw6 X7TMeO7Q/dKum3660BrQYMHbKHFFigxdlVrgHAYMzYJUQjcVHHdlsj5diOIA2AssCGQOdi AkUIr+3nlvGlau5INjxgeL6OF6Rm5gqRsO5eZDYZp1K3jP2/col8qCx6JgcGbEa7uWF0t0 4E1ze2KHEa2wY5YOWQhD9MckreyTFgT4ZUWviGd36mmySgkWslTsS5mRQyVhH2cjKuSN17 YLxcPuQqd2tQ9ETFH7+bxJqZ+W9w== Received: from localhost.localdomain (localhost [127.0.0.1]) by rockpro64.cyberdimension.org (OpenSMTPD) with ESMTP id fc83aafb; Wed, 7 Aug 2024 15:39:46 +0000 (UTC) From: Denis 'GNUtoo' Carikli <GNUtoo@HIDDEN> Date: Wed, 7 Aug 2024 17:39:19 +0200 Message-ID: <d4927ad6160e8acb02b917929b587aae02b26768.1723041383.git.GNUtoo@HIDDEN> X-Mailer: git-send-email 2.45.2 In-Reply-To: <cover.1723041383.git.GNUtoo@HIDDEN> References: <cover.1723041383.git.GNUtoo@HIDDEN> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) Without this patch, it is possible to install Guix on Dragora, but then no init system is detected and so the Guix daemon isn't started. Thanks a lot for the help from selk on #dragora on Libera Chat for the help. * etc/guix-install.sh (chk_init_sys): Detect perp. (sys_enable_guix_daemon): Install, configure, enable and start the perp service. (sys_delete_guix_daemon): Stop and remove the perp service. * etc/perp/rc.log.in: New file. * etc/perp/rc.main.in: New file. * nix/local.mk: Add build rules. * .gitignore: Ignore generated etc/perp/rc.log and etc/perp/rc.main. Change-Id: I15a5229fee69ebd41ac538b25a3e68793c563144 Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@HIDDEN> --- .gitignore | 2 ++ etc/guix-install.sh | 25 +++++++++++++++++++++++++ etc/perp/rc.log.in | 24 ++++++++++++++++++++++++ etc/perp/rc.main.in | 45 +++++++++++++++++++++++++++++++++++++++++++++ nix/local.mk | 17 ++++++++++++++++- 5 files changed, 112 insertions(+), 1 deletion(-) create mode 100644 etc/perp/rc.log.in create mode 100644 etc/perp/rc.main.in diff --git a/.gitignore b/.gitignore index 0f74b5da3d..11f99e32db 100644 --- a/.gitignore +++ b/.gitignore @@ -77,6 +77,8 @@ /etc/guix-gc.service /etc/init.d/guix-daemon /etc/openrc/guix-daemon +/etc/perp/rc.log +/etc/perp/rc.main /guix-* /guix/config.scm /libformat.a diff --git a/etc/guix-install.sh b/etc/guix-install.sh index 9d9c294d75..4a0b326ffa 100755 --- a/etc/guix-install.sh +++ b/etc/guix-install.sh @@ -232,6 +232,10 @@ chk_init_sys() _msg "${INF}init system is: systemd" INIT_SYS="systemd" return 0 + elif [[ $(perpboot -V 2>&1) =~ perpboot ]]; then + _msg "${INF}init system is: perp" + INIT_SYS="perp" + return 0 elif [[ -f /etc/init.d/cron && ! -h /etc/init.d/cron ]]; then _msg "${INF}init system is: sysv-init" INIT_SYS="sysv-init" @@ -505,6 +509,20 @@ sys_enable_guix_daemon() systemctl start guix-daemon; } && _msg "${PAS}enabled Guix daemon via systemd" ;; + perp) + { mkdir -p /etc/perp/guix-daemon/; + cp ~root/.config/guix/current/etc/perp/rc.log \ + /etc/perp/guix-daemon/rc.log; + cp ~root/.config/guix/current/etc/perp/rc.main \ + /etc/perp/guix-daemon/rc.main; + chmod 775 /etc/perp/guix-daemon/rc.log; + chmod 775 /etc/perp/guix-daemon/rc.main; + + configure_substitute_discovery /etc/perp/guix-daemon/rc.main + + perpctl A guix-daemon; } && + _msg "${PAS}enabled Guix daemon via perp" + ;; sysv-init) { mkdir -p /etc/init.d; cp ~root/.config/guix/current/etc/init.d/guix-daemon \ @@ -587,6 +605,13 @@ sys_delete_guix_daemon() systemctl daemon-reload ;; + perp) + _msg "${INF}stopping and disabling guix-daemon" + perpctl X guix-daemon + _msg "${INF}removing guix-daemon" + rm -rf /etc/perp/guix-daemon + ;; + sysv-init) update-rc.d guix-daemon disable service guix-daemon stop diff --git a/etc/perp/rc.log.in b/etc/perp/rc.log.in new file mode 100644 index 0000000000..11c3ab490e --- /dev/null +++ b/etc/perp/rc.log.in @@ -0,0 +1,24 @@ +#!/bin/sh +# GNU Guix --- Functional package management for GNU +# Copyright © 2024 Denis 'GNUtoo' Carikli <GNUtoo@HIDDEN> +# +# This file is part of GNU Guix. +# +# GNU Guix is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or (at +# your option) any later version. +# +# GNU Guix is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. + +if [ "${1}" = "start" ] ; then + exec tinylog_run "${2}" +fi + +exit 0 diff --git a/etc/perp/rc.main.in b/etc/perp/rc.main.in new file mode 100644 index 0000000000..cdf92763eb --- /dev/null +++ b/etc/perp/rc.main.in @@ -0,0 +1,45 @@ +#! /bin/sh +# GNU Guix --- Functional package management for GNU +# Copyright © 2024 Denis 'GNUtoo' Carikli <GNUtoo@HIDDEN> +# +# This file is part of GNU Guix. +# +# GNU Guix is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or (at +# your option) any later version. +# +# GNU Guix is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. + +start() { + echo "*** ${SVNAME}: starting Guix daemon..." + + export GUIX_LOCPATH=@localstatedir@/guix/profiles/per-user/root/guix-profile/lib/locale + export LC_ALL=en_US.utf8 + exec @localstatedir@/guix/profiles/per-user/root/current-guix/bin/guix-daemon \ + --build-users-group=guixbuild --discover=no \ + --substitute-urls='https://bordeaux.guix.gnu.org https://ci.guix.gnu.org' 2>&1 +} + +reset() { + case $3 in + "exit" ) + echo "*** ${SVNAME}: exited status $4" + ;; + "signal" ) + echo "*** ${SVNAME}: killed on signal $5" + ;; + * ) + echo "*** ${SVNAME}: stopped ($3)" + ;; + esac + exit 0 +} + +eval ${TARGET} "$@" diff --git a/nix/local.mk b/nix/local.mk index 8a2b2b88e8..ffc57185cf 100644 --- a/nix/local.mk +++ b/nix/local.mk @@ -194,6 +194,18 @@ etc/openrc/guix-daemon: etc/openrc/guix-daemon.in \ "$<" > "$@.tmp"; \ mv "$@.tmp" "$@" +# The service script for perp. +perpservicedir = $(sysconfdir)/perp +nodist_perpservice_DATA = etc/perp/rc.log etc/perp/rc.main + +etc/perp/rc.%: etc/perp/rc.%.in \ + $(top_builddir)/config.status + $(AM_V_GEN)$(MKDIR_P) "`dirname $@`"; \ + $(SED) -e 's|@''localstatedir''@|$(localstatedir)|' \ + -e 's|@''GUIX_SUBSTITUTE_URLS''@|$(GUIX_SUBSTITUTE_URLS)|' \ + < "$<" > "$@.tmp"; \ + mv "$@.tmp" "$@" + # The '.conf' jobs for Upstart. upstartjobdir = $(libdir)/upstart/system nodist_upstartjob_DATA = etc/guix-daemon.conf etc/guix-publish.conf @@ -210,6 +222,7 @@ CLEANFILES += \ $(nodist_systemdservice_DATA) \ $(nodist_upstartjob_DATA) \ $(nodist_sysvinitservice_DATA) \ + $(nodist_perpservice_DATA) \ $(nodist_openrcservice_DATA) EXTRA_DIST += \ @@ -223,7 +236,9 @@ EXTRA_DIST += \ etc/guix-gc.service.in \ etc/guix-gc.timer \ etc/init.d/guix-daemon.in \ - etc/openrc/guix-daemon.in + etc/openrc/guix-daemon.in \ + etc/perp/rc.log.in \ + etc/perp/rc.main.in if CAN_RUN_TESTS -- 2.45.2
X-Loop: help-debbugs@HIDDEN Subject: [bug#72514] [PATCH v1 0/2] Add perp support in guix-install.sh for Dragora. References: <cover.1723041383.git.GNUtoo@HIDDEN> In-Reply-To: <cover.1723041383.git.GNUtoo@HIDDEN> Resent-From: Vincent Legoll <vincent.legoll@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: guix-patches@HIDDEN Resent-Date: Thu, 08 Aug 2024 09:11:02 +0000 Resent-Message-ID: <handler.72514.B72514.172310820317002 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: followup 72514 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 72514 <at> debbugs.gnu.org Received: via spool by 72514-submit <at> debbugs.gnu.org id=B72514.172310820317002 (code B ref 72514); Thu, 08 Aug 2024 09:11:02 +0000 Received: (at 72514) by debbugs.gnu.org; 8 Aug 2024 09:10:03 +0000 Received: from localhost ([127.0.0.1]:35556 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sbz9Y-0004PV-Cy for submit <at> debbugs.gnu.org; Thu, 08 Aug 2024 05:10:03 -0400 Received: from mail-pf1-f171.google.com ([209.85.210.171]:58382) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <vincent.legoll@HIDDEN>) id 1sbz9W-0004PI-BH for 72514 <at> debbugs.gnu.org; Thu, 08 Aug 2024 05:09:46 -0400 Received: by mail-pf1-f171.google.com with SMTP id d2e1a72fcca58-70d333d5890so715264b3a.0 for <72514 <at> debbugs.gnu.org>; Thu, 08 Aug 2024 02:09:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1723108094; x=1723712894; darn=debbugs.gnu.org; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=dFC/zLPicPz5/VwxKwieK7epYuVLmrSG8p1x/nVM+XU=; b=FWy3OcRaTVeVMcSUi+7/ep5v7Df5VlDCmwPW6kSXe3haSeLVyHa7I1vo2whJFsqaan 3Wz85jPq2ItW7NTCQn35YUtUTBrrOItUncYZRjLoymFThbgwMU8oB36La0cQLUhVcDuC QYVn3vVSlNWAedca8oWQZCj9EDfxMF37qsGUaRI4mqchZmAYA/6hAe8kBIagY5o2ufb/ jyp/LpLCljLq6cP6ejciymhCgCzEAbZdpaRaIaOghcu0C3F24VW+jsvebNPykdXpOYX2 OlRV3Xbdr7x4IVI0FWn0UMuGF7iQKq8ZYgVK0zzV5+kZlXEaTxSaiRt2x/IB+HFpHbPS S6/g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1723108094; x=1723712894; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=dFC/zLPicPz5/VwxKwieK7epYuVLmrSG8p1x/nVM+XU=; b=wsrsrGt/yJI38RB9kKDQGvNpxK44z2dwsEzIygW43b/3xVNuS42iFlD0kzBIDJ0zcB sIOjpoxxkoLjXlDGb1EfhthiLq/lNSoWKstAOnozBEpHlnoiDxt1OeRcBQP9ltrcaKp/ ez283/cjy/+dhYarM9Zuv4bq6WgCC0MEDVCLTjNKSS3rk+LTKCllXpRnMsdVhuaHX9bZ FziH68/Jsm/vybpe+MJvBPWK9qADlmXsPxbW/7KACC9GKPSfW7dsEfs79wvp70pYuqSH YcT3Xys+CcDULEn4Vrd9fTxayVcrYeOwNMYdnjy8R88RWx3qVDzixMs5WwrDmXI6keHV /s1A== X-Gm-Message-State: AOJu0Ywrv99A+s532X2y74Fv2eZqk7XuNpSg2X2X0qJb8Fi1En2EIiTR Rr8KFdID4bN8HR3zQAgMvk1g8L6wYMuZzAOVq+WLTVbAnGE3a47M2qymG/q/1gNtVe8ZO5aBmrk Zh7zv5Duy+Vb67yZN8kq81jFRwTKNPQ== X-Google-Smtp-Source: AGHT+IGh00zHCk2ShssRhrWZ2653sfRB3Flk0NC0XnMz6u03lUF3wzEjR5tWIi9EibzfF9E6ZT8vXD/CnpqmXPhATO0= X-Received: by 2002:a05:6a21:329e:b0:1af:66aa:7fc7 with SMTP id adf61e73a8af0-1c6fceaa0bamr1356093637.3.1723108093791; Thu, 08 Aug 2024 02:08:13 -0700 (PDT) MIME-Version: 1.0 From: Vincent Legoll <vincent.legoll@HIDDEN> Date: Thu, 8 Aug 2024 09:08:02 +0000 Message-ID: <CAEwRq=oEJBagHVutbgD0rMtXYdHMbgeO4LPz0FTj-xcMLwm_Og@HIDDEN> Content-Type: multipart/alternative; boundary="000000000000d717be061f285d45" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) --000000000000d717be061f285d45 Content-Type: text/plain; charset="UTF-8" Hello, Totally untested, but for what it's worth: LGTM And also: good luck -- Vincent Legoll --000000000000d717be061f285d45 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr"><div>Hello,</div><div><br></div><div>Totally untested, but= for what it's worth: LGTM<br></div><div><br></div><div>And also: good = luck<br></div><div><br><span class=3D"gmail_signature_prefix">-- </span><br= ><div dir=3D"ltr" class=3D"gmail_signature" data-smartmail=3D"gmail_signatu= re">Vincent Legoll</div></div></div> --000000000000d717be061f285d45--
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997 nCipher Corporation Ltd,
1994-97 Ian Jackson.