From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp2 ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms0.migadu.com with LMTPS id b2WtOabHImFJ9gAAgWs5BA (envelope-from ) for ; Sun, 22 Aug 2021 23:54:46 +0200 Received: from aspmx1.migadu.com ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp2 with LMTPS id mEC7NKbHImFNHAAAB5/wlQ (envelope-from ) for ; Sun, 22 Aug 2021 21:54:46 +0000 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 730531BBE5 for ; Sun, 22 Aug 2021 23:54:46 +0200 (CEST) Received: from localhost ([::1]:53532 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mHvQT-0002Ab-5S for larch@yhetil.org; Sun, 22 Aug 2021 17:54:45 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:54960) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mHvNr-0007u9-IB for guix-patches@gnu.org; Sun, 22 Aug 2021 17:52:03 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:56630) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1mHvNr-0002vk-BA for guix-patches@gnu.org; Sun, 22 Aug 2021 17:52:03 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1mHvNr-0007do-A8 for guix-patches@gnu.org; Sun, 22 Aug 2021 17:52:03 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#49969] [PATCH v5 03/10] gnu: freedesktop: Add greetd 0.7.0 Resent-From: muradm Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sun, 22 Aug 2021 21:52:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 49969 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 49969@debbugs.gnu.org Received: via spool by 49969-submit@debbugs.gnu.org id=B49969.162966907829244 (code B ref 49969); Sun, 22 Aug 2021 21:52:03 +0000 Received: (at 49969) by debbugs.gnu.org; 22 Aug 2021 21:51:18 +0000 Received: from localhost ([127.0.0.1]:39922 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mHvN2-0007b9-Nr for submit@debbugs.gnu.org; Sun, 22 Aug 2021 17:51:17 -0400 Received: from mail-ej1-f41.google.com ([209.85.218.41]:41617) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mHvMx-0007Zq-8R for 49969@debbugs.gnu.org; Sun, 22 Aug 2021 17:51:09 -0400 Received: by mail-ej1-f41.google.com with SMTP id d11so32656212eja.8 for <49969@debbugs.gnu.org>; Sun, 22 Aug 2021 14:51:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=muradm-net.20150623.gappssmtp.com; s=20150623; h=from:to:subject:date:message-id:in-reply-to:references:mime-version :content-transfer-encoding; bh=nEINoMLrzaS30XC8gG/xmfBFpnpQM1RqcwbtjT5QaQU=; b=P8WT7RwLI/Bi+swmBQ9bU4J8z1oMV9weR0CCnouIBSxSo4uMdl59qL6DSdUslfXzxH xLjgW/B65QZ2SD07pl8qHCg3GLBVINP988MMuuHdyr4j9nem0W4gTeo9QfqEnzaMrDgA UXDUIcbCHWsyahUHaeIr0rNmvwMD5fDGtRB4h6k5FoyC31MdLpaQ3B6TLlcwg3wTirWe +iDxqj8lRb0PjiNwZEqJNX7HE/5bq8KPf26wcLUhJi+bSTPsQ/WKQe2+guLER+u/hyok h15qbyPP+YxI57AMDA5b3qA1WD1VvHgjfleYRQJW745Pax96pUZO9jCHuD7oKDNElGPF z0XQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=nEINoMLrzaS30XC8gG/xmfBFpnpQM1RqcwbtjT5QaQU=; b=d5MR8XfQ5OPorgEAG5t/AbMT91UKeNbtx88ULhgV5PoFESkkk8EloYPf7K+Hm7A/c1 NV45GTD2PAaXZJYYCIXGK0W2ABXAyCfrUnRC9soI76asFC+qt5tJAe7jh28jfXgs8NVR J48Db+keegHp6YGuQfyRDIIl1mM7hVlkP1YMM0/13VfFUgPIWVvTjdYgatAbAduZ+Mne pxXreUUDNgZXOHTz6zHzR5kckRxmY0aV+SBtxRoSh+T2RXnHCqsDzv/cZhR+Wza1W334 f0RbBgYJHTrMvHIfLNaAf5zhOdbjUk9NNsLUKzkATQP4wHvjsHC08BYz8gl71/e7D2En 2y7w== X-Gm-Message-State: AOAM533wLW7XzbqxI9XdEmuLl/VemgCXQx97nPMHUskfaEQ7qBpEk9Jq PkgVj3QTF7KQ7b9whax9U0y2ZY8O2JDkbw== X-Google-Smtp-Source: ABdhPJwE8218gPCFsEfkiKQUvJwS77ZAm4zF7q0RRRybkYZVaaNfEPimTYmgbE6+Sc8uU8IjcY2lmQ== X-Received: by 2002:a17:906:2ad5:: with SMTP id m21mr32408542eje.88.1629669061259; Sun, 22 Aug 2021 14:51:01 -0700 (PDT) Received: from localhost.localdomain ([31.142.76.217]) by smtp.gmail.com with ESMTPSA id q5sm7959755edt.50.2021.08.22.14.50.59 for <49969@debbugs.gnu.org> (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 22 Aug 2021 14:51:00 -0700 (PDT) From: muradm Date: Mon, 23 Aug 2021 00:50:41 +0300 Message-Id: <20210822215048.20480-4-mail@muradm.net> X-Mailer: git-send-email 2.32.0 In-Reply-To: <20210822215048.20480-1-mail@muradm.net> References: <20210819143133.6398-1-mail@muradm.net> <20210822215048.20480-1-mail@muradm.net> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 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" X-Migadu-Flow: FLOW_IN ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1629669286; 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: content-transfer-encoding:content-transfer-encoding:resent-cc: resent-from:resent-sender:resent-message-id:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post:dkim-signature; bh=nEINoMLrzaS30XC8gG/xmfBFpnpQM1RqcwbtjT5QaQU=; b=A+wQApc3sTOsm71HrPdl9xY3BHhT9EKmV+DJMS6inVgmAQmNWJzR5OURDhS37NRuc+NUxJ 89qZOaQ9o9RWueK/8noxsRfo/MEh8NtExR6NXCH6ekUjLVbZIPOt6mA0LxnoPd/T6Ts9aK Qk1l15PJtgqk6Xt9kwafcJNIGa1b+bMIYTDSw2tPwXoCEG3JgMk/JLh5TfZU3nmtp+e/jB TmhqlKhN0d9Ki6//jIlj1Pp4ILJj1AibmgcHXVTat3GeCxy2KSa1t5UEY/gRTdBXqw3vjh bXBR/9nzQbRugN2ejmYJzoirb9iOEXKPPfOg+0Be68rC1gyWtibnLDExFdKNLQ== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1629669286; a=rsa-sha256; cv=none; b=e3CbMOgwOU5mRWUCr96J+qGRrz63AYYyJI+36rHuZH8MqYlUPGxoxxNYIIdHG3NaI9fpCR 7uK4w1RDZ87PCrtkmLR/WidsUeC6DcxD7qYXjmeRLFZzyotTG+7IzgXegSGDurZy9XiiHy izfUQEsZAxd2b5a5Ovh6YAoy5PTGnj50i6nYhIR0jwyHLCeZpgc6BuJ50J3RdHDBCNEzaM OzuGIVjHBhDT/X6tLLz27caHRyB/Xq4RIOOxeZIAt0G8dCODEMqZO/7oO01/gbIEVy9xlL elMxlompBjhuzp9FW4MbN7mD36lK91hADQB2fOBEvguEd28GXBWZSXRWNXXvfw== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=muradm-net.20150623.gappssmtp.com header.s=20150623 header.b=P8WT7RwL; dmarc=none; spf=pass (aspmx1.migadu.com: domain of guix-patches-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-patches-bounces@gnu.org X-Migadu-Spam-Score: -0.43 Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=muradm-net.20150623.gappssmtp.com header.s=20150623 header.b=P8WT7RwL; dmarc=none; spf=pass (aspmx1.migadu.com: domain of guix-patches-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-patches-bounces@gnu.org X-Migadu-Queue-Id: 730531BBE5 X-Spam-Score: -0.43 X-Migadu-Scanner: scn0.migadu.com X-TUID: 91tgr23MFjJp Also adds greetd-next which is built from master that includes configurable terminal switch flag, required for smooth operation. See https://lists.sr.ht/~kennylevinsen/greetd-devel/patches/24441 for more details. * gnu/packages/freedesktop.scm (greetd): Add greetd 0.7.0 --- gnu/packages/freedesktop.scm | 120 +++++++++++++++++++++++++++++++++++ 1 file changed, 120 insertions(+) diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm index 693a79c738..aa83eb0a37 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -24,6 +24,7 @@ ;;; Copyright © 2020 Raghav Gururajan ;;; Copyright © 2021 Brendan Tildesley ;;; Copyright © 2021 pineapples +;;; Copyright © 2021 muradm ;;; ;;; This file is part of GNU Guix. ;;; @@ -46,6 +47,7 @@ #:use-module (guix packages) #:use-module (guix download) #:use-module (guix git-download) + #:use-module (guix build-system cargo) #:use-module (guix build-system cmake) #:use-module (guix build-system gnu) #:use-module (guix build-system meson) @@ -62,6 +64,7 @@ #:use-module (gnu packages check) #:use-module (gnu packages cmake) #:use-module (gnu packages compression) + #:use-module (gnu packages crates-io) #:use-module (gnu packages cryptsetup) #:use-module (gnu packages databases) #:use-module (gnu packages disk) @@ -862,6 +865,123 @@ that require it. It also provides a universal seat management library that allows applications to use whatever seat management is available.") (license license:expat))) +(define-public greetd + (package + (name "greetd") + (version "0.7.0") + (home-page "https://git.sr.ht/~kennylevinsen/greetd") + (source (origin + (method git-fetch) + (uri (git-reference + (url home-page) + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0lmwr5ld9x2wlq00i7mjgm9by8zndiq9girj8g93k0kww9zbgr3g")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-nix" ,rust-nix-0.17) + ("rust-pam-sys" ,rust-pam-sys-0.5.6) + ("rust-rpassword" ,rust-rpassword-4) + ("rust-users" ,rust-users-0.9) + ("rust-serde" ,rust-serde-1) + ("rust-serde-json" ,rust-serde-json-1) + ("rust-libc" ,rust-libc-0.2) + ("rust-tokio" ,rust-tokio-0.2) + ("rust-getopts" ,rust-getopts-0.2) + ("rust-thiserror" ,rust-thiserror-1) + ("rust-async-trait" ,rust-async-trait-0.1) + ("rust-enquote" ,rust-enquote-1)) + #:phases + (modify-phases %standard-phases + ;; issue with terminal activation solved by this feature: + ;; https://lists.sr.ht/~kennylevinsen/greetd-devel/patches/24441 + ;; greetd-next builds from head of #24441 + ;; below substitute is provided as workaround for tagged version + (add-after 'unpack 'patch-terminal-switch + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "greetd/src/server.rs" + (("switch: true,") + "switch: false,")))) + (delete 'package) + (add-after 'build 'build-man-pages + (lambda* (#:key inputs #:allow-other-keys) + (define (scdoc-cmd doc lvl) + (system (string-append "scdoc < " + doc "-" lvl ".scd > " + doc "." lvl))) + (with-directory-excursion "man" + (scdoc-cmd "greetd" "1") + (scdoc-cmd "greetd" "5") + (scdoc-cmd "greetd-ipc" "7") + (scdoc-cmd "agreety" "1")))) + (replace 'install + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin")) + (sbin (string-append out "/sbin")) + (share (string-append out "/share")) + (man (string-append share "/man")) + (man1 (string-append man "/man1")) + (man5 (string-append man "/man5")) + (man7 (string-append man "/man7")) + (release "target/release") + (greetd-bin (string-append release "/greetd")) + (agreety-bin (string-append release "/agreety"))) + (install-file greetd-bin sbin) + (install-file agreety-bin bin) + (with-directory-excursion "man" + (install-file "greetd.1" man1) + (install-file "greetd.5" man5) + (install-file "greetd-ipc.7" man7) + (install-file "agreety.1" man1)))))))) + (native-inputs + `(("linux-pam" ,linux-pam) + ("scdoc" ,scdoc))) + (synopsis "minimal and flexible login manager daemon") + (description + "greetd is a minimal and flexible login manager daemon +that makes no assumptions about what you want to launch. + +If you can run it from your shell in a TTY, greetd can start it. + +If it can be taught to speak a simple JSON-based IPC protocol, +then it can be a greeter.") + (license license:gpl3+))) + +(define-public greetd-next + (package + (inherit greetd) + (name "greetd-next") + (version "0.7.0-87e9277") + (source (origin + (method git-fetch) + (uri (git-reference + (url (package-home-page greetd)) + (commit "87e92776543c224676d64316f4519b509c21a0d5"))) + (file-name (git-file-name name version)) + (sha256 + (base32 "13dblvhx5vbsx0yqyz2sq1ayffqwadbkn90p52wd5b66ij1z6v1a")))) + (arguments + (substitute-keyword-arguments (package-arguments greetd) + ((#:cargo-inputs inputs) + `(("rust-nix" ,rust-nix-0.19) + ("rust-pam-sys" ,rust-pam-sys-0.5.6) + ("rust-rpassword" ,rust-rpassword-5) + ("rust-users" ,rust-users-0.11) + ("rust-serde" ,rust-serde-1) + ("rust-serde-json" ,rust-serde-json-1) + ("rust-libc" ,rust-libc-0.2) + ("rust-tokio" ,rust-tokio-1) + ("rust-getopts" ,rust-getopts-0.2) + ("rust-thiserror" ,rust-thiserror-1) + ("rust-async-trait" ,rust-async-trait-0.1) + ("rust-enquote" ,rust-enquote-1))) + ((#:phases phases) + `(modify-phases ,phases + (delete 'patch-terminal-switch))))))) + (define-public packagekit (package (name "packagekit") -- 2.32.0