From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp0.migadu.com ([2001:41d0:403:4876::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms8.migadu.com with LMTPS id 8Ml/NI2GqmUgFAEAqHPOHw:P1 (envelope-from ) for ; Fri, 19 Jan 2024 15:26:22 +0100 Received: from aspmx1.migadu.com ([2001:41d0:403:4876::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp0.migadu.com with LMTPS id 8Ml/NI2GqmUgFAEAqHPOHw (envelope-from ) for ; Fri, 19 Jan 2024 15:26:21 +0100 X-Envelope-To: larch@yhetil.org Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gmail.com header.s=20230601 header.b=nUoB0sTo; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmail.com (policy=none); spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org" ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1705674381; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type:resent-cc:resent-from:resent-sender: resent-message-id:list-id:list-help:list-unsubscribe:list-subscribe: list-post:dkim-signature; bh=URTIJnQ2mJoOGD1AW7BwK0/Ny6us0IsmffUVAWVqE1o=; b=MHAGo7Tml89CftsbZZt4kiDFXg9qxfNkvSQqXapVCYWuWsRdkJzJRCouEKaGpf8NRFWPXz VytfQvUnWDnDllIlD9tlHV1e4ytjDxy9uU8100AFAbuBWYVHi0P9bZAIxZTcJ4rYg6bQ/s Ehv+UuVqhj+aEfmvUl1LEfdXHyhNV5tDL6YOsp1x8Pt2kX3KEXlRgs0Z7L4jzIQVRK+snT qxRhhnqm5akNvgFnPCGqCRTWR6ppzpj1ZhRPFKPH17Cjd5hZS8WukRjbi/6arI1VGcx/hY bl7Qgaz7AW0BgieCS1Kmk3PI/MRDGhruuXCi66/cMfqMjyDM6/jLqExEotGCAw== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1705674381; a=rsa-sha256; cv=none; b=bGdR3vC31XUwqd0WQ+naYKLyjWTB2Bw4V6kUvzKIHr88UYJgKonzuH7WTvLBA62iYeH6GM kgyO8ZIm4ZYyNTB5FKiTUuM2SWOQzXuexpY4bhMK7XW8XSL+GL5TY4pWl/+oD8HSuM3RVm KlQiGwab9hzJqKOZU+bJNRaIm1MH+SuT/r+ay6AYc1H3ayccygE7Vs+8rWbuj0ulQGzcb0 5q/5TtrurD75VTDKwcAd74L5pd2QGs59Xrgx/htH/lIVNHJamgVGpwCpmOwCmYQ3VPULhZ r5Yj9+tJKdYKHc6tWKJhxlvj2Mqnta1sa+9MTaEi/CQaUFtyxyaEm8+9mmcqrQ== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gmail.com header.s=20230601 header.b=nUoB0sTo; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmail.com (policy=none); spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org" 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 87DC79C8C for ; Fri, 19 Jan 2024 15:26:21 +0100 (CET) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rQpoo-00089A-0C; Fri, 19 Jan 2024 09:26:02 -0500 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 ) id 1rQpom-00088l-Cn for guix-patches@gnu.org; Fri, 19 Jan 2024 09:26:00 -0500 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1rQpom-000781-4i for guix-patches@gnu.org; Fri, 19 Jan 2024 09:26:00 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1rQpoo-00083u-2n for guix-patches@gnu.org; Fri, 19 Jan 2024 09:26:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#68589] [PATCH] Add guix-home-service-type Resent-From: Lars Rustand Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Fri, 19 Jan 2024 14:26:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 68589 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 68589@debbugs.gnu.org X-Debbugs-Original-To: guix-patches@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.170567432430919 (code B ref -1); Fri, 19 Jan 2024 14:26:01 +0000 Received: (at submit) by debbugs.gnu.org; 19 Jan 2024 14:25:24 +0000 Received: from localhost ([127.0.0.1]:57926 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rQpoB-00082b-Fr for submit@debbugs.gnu.org; Fri, 19 Jan 2024 09:25:23 -0500 Received: from lists.gnu.org ([2001:470:142::17]:46584) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rQpo9-00082N-1C for submit@debbugs.gnu.org; Fri, 19 Jan 2024 09:25:22 -0500 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 ) id 1rQpo0-00081M-Nj for guix-patches@gnu.org; Fri, 19 Jan 2024 09:25:12 -0500 Received: from mail-lf1-x133.google.com ([2a00:1450:4864:20::133]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1rQpnz-0006ts-0N for guix-patches@gnu.org; Fri, 19 Jan 2024 09:25:12 -0500 Received: by mail-lf1-x133.google.com with SMTP id 2adb3069b0e04-50e7abe4be4so1092085e87.2 for ; Fri, 19 Jan 2024 06:25:10 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1705674309; x=1706279109; darn=gnu.org; h=mime-version:message-id:date:subject:to:from:user-agent:from:to:cc :subject:date:message-id:reply-to; bh=URTIJnQ2mJoOGD1AW7BwK0/Ny6us0IsmffUVAWVqE1o=; b=nUoB0sToLK3lGzk74uBqTARBeH+9bELmmqbBRHJsoqDAxzHNg+c4AJ13gLbyV8sY9Y VMAalSSoW/2kGd0dJwBDJ1YYiSvnNki5r32ClAeMo6Ac1/yyVLFrB9N8+cKjRxZWoIrk 8GXqjoPKy0monROHOwEiQEinL/VCeSOrrXarHlfqUCzL2JA9ItzQ4oNOFjZ+ZTiO0kBb zItKLJLg4AKt8cl1TYKcHTl1q0kBNQMfI6MsbDY4G0Nv8bHq/O20iem3L2jblduU9dC8 6PdlOku9dMFzdGOgA/ipFf3pUsA3eqIG1sWTznSr7rLoBLlnurP7QzrADnLgvSZefN99 fsIA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1705674309; x=1706279109; h=mime-version:message-id:date:subject:to:from:user-agent :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=URTIJnQ2mJoOGD1AW7BwK0/Ny6us0IsmffUVAWVqE1o=; b=ubhITYoDL23/kEkqTYbBon5AvNxEX/NJJkUB/7Vd4VxeK22m9UaJLNDKIaqqAlD22O o3oSdiqTpdxkI10ZPBbXXh4d6h2N0dRTKD5jSTb/Y9BZ36fR6ZO7aeA3MrhWsqktqtcf jgVeztpW6/RJ4lz1lBlLyUedn7JjujUU0V0XUscznwS5hgRNa/Vxb0Bhqrpl7Wd46OyL UxnapTnwzJ7b110HuXgzuZM0nPCLGNOI+YFLspBAWQ69hLfMjjHbJmJyM3wyAbIVxuS+ NE6qcEuRHuaXbOHU9RSIiFDxxzXpTMS0X6S/Q4rzpHNgR0eZsA2ApdmOzda2mshaf/4J u26w== X-Gm-Message-State: AOJu0YxMwwB4vu+CE5AXbS2HBXV7uQ//7bVgfifQ2znA303Bl0Jiv7oy aP+QBXQ2QYf3Cfr5N65ckr3wBxJSOaNvTwqvuAAyWCWKipPGEJGixbWZ+RME46g= X-Google-Smtp-Source: AGHT+IEkcb9WC91e5WeUHIUHlRnL8IiG0MwbgVcdDl/4WBayPoMjwNdcMxo47fjVP/AOf5u/0h1y/g== X-Received: by 2002:a05:6512:3f1f:b0:50e:75ee:ec4c with SMTP id y31-20020a0565123f1f00b0050e75eeec4cmr1045262lfa.11.1705674309098; Fri, 19 Jan 2024 06:25:09 -0800 (PST) Received: from localhost (78.79-160-60.customer.lyse.net. [79.160.60.78]) by smtp.gmail.com with ESMTPSA id w6-20020ac254a6000000b0050f18179d72sm264706lfk.262.2024.01.19.06.25.08 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 19 Jan 2024 06:25:08 -0800 (PST) User-agent: mu4e 1.10.8; emacs 30.0.50 From: Lars Rustand Date: Fri, 19 Jan 2024 15:12:13 +0100 Message-ID: <87wms5e6ym.fsf@yoga.mail-host-address-is-not-set> MIME-Version: 1.0 Content-Type: text/plain Received-SPF: pass client-ip=2a00:1450:4864:20::133; envelope-from=rustand.lars@gmail.com; helo=mail-lf1-x133.google.com 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, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-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+larch=yhetil.org@gnu.org Sender: guix-patches-bounces+larch=yhetil.org@gnu.org X-Migadu-Flow: FLOW_IN X-Migadu-Country: US X-Migadu-Scanner: mx10.migadu.com X-Migadu-Spam-Score: 2.31 X-Spam-Score: 2.31 X-Migadu-Queue-Id: 87DC79C8C X-TUID: Hdmzkh2Nn0We Hoping to upstream this nice service from RDE. This service allows to embed a home environment in a operating-system declaration. Original source: https://git.sr.ht/~abcdw/rde/tree/master/item/src/gnu/services/home.scm Change-Id: I42976cae9dd1580dc07dc866cd851294c7921725 --- gnu/services/home.scm | 47 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 gnu/services/home.scm diff --git a/gnu/services/home.scm b/gnu/services/home.scm new file mode 100644 index 0000000000..868eafbec8 --- /dev/null +++ b/gnu/services/home.scm @@ -0,0 +1,47 @@ +(define-module (gnu services home) + #:use-module (gnu services) + #:use-module (gnu services shepherd) + + #:use-module (guix gexp) + #:use-module (guix packages) + #:use-module (guix records) + + #:export (guix-home-service-type)) + + +(define (guix-home-shepherd-service config) + (map + (lambda (x) + (let ((user (car x)) + (he (cdr x))) + (shepherd-service + (documentation "Activate Guix Home.") + ;; Originally requirement was user-homes, but for recently it stopped + ;; working, seems like it was executed too early and didn't work, so + ;; we switched to term-tty1. + (requirement '(term-tty1)) + (provision (list (symbol-append 'guix-home- (string->symbol user)))) + (one-shot? #t) + (auto-start? #t) + (start #~(make-forkexec-constructor + '(#$(file-append he "/activate")) + #:user #$user + #:environment-variables + (list (string-append "HOME=" (passwd:dir (getpw #$user)))) + #:group (group:name (getgrgid (passwd:gid (getpw #$user)))))) + (stop #~(make-kill-destructor))))) + config)) + +(define (guix-home-gc-roots config) + (map cdr config)) + +(define guix-home-service-type + (service-type + (name 'guix-home) + (description "Setups home-environments specified in the value.") + (extensions (list (service-extension + shepherd-root-service-type + guix-home-shepherd-service))) + ;; (compose append) + ;; (extend append) + (default-value '()))) base-commit: 162d6a2fdd6af13272967c77347a54934ecb45e6 -- 2.41.0