Message ID | 73e46631970b385218a1b067e545bd8e7ef21ddf.camel@gmail.com |
---|---|
State | Accepted |
Headers | show |
Series | [bug#37405] Services: Check and modify gdm-password in pam-limits | expand |
ping https://lists.gnu.org/archive/html/guix-patches/2019-09/msg00357.html
On Wed, 2019-09-18 at 20:46 -0600, Jesse Gibbons wrote: > ping > https://lists.gnu.org/archive/html/guix-patches/2019-09/msg00357.html ping
Hi, thanks for the patch. I'm not thrilled about that approach (arguably Guix already does it wrong anyway). But since the manual of pam_limits does describe that one should use it like that, I have applied it as a stop-gap fix to guix master as commit 0bf7d34d77ffca40be9e04586195054e9f2c7a13. Long term, we should really make pam entries first class and show up in the operating-system record--that's what they are FOR: to let the administrator (and thus the organization) choose how they want to do user authorization/session handling etc. Why do we decide for them? Bug report kept open for obvious reasons.
On Wed, 2019-10-02 at 01:00 +0200, Danny Milosavljevic wrote: > Hi, > > thanks for the patch. > > I'm not thrilled about that approach (arguably Guix already does it wrong > anyway). I think you should start a thread on the guix-devel list expressing your concerns, and we can discuss how to improve guix from there. > > But since the manual of pam_limits does describe that one should use it > like that, I have applied it as a stop-gap fix to guix master as > commit 0bf7d34d77ffca40be9e04586195054e9f2c7a13. Thanks! > > Long term, we should really make pam entries first class and show up in > the > operating-system record--that's what they are FOR: to let the > administrator > (and thus the organization) choose how they want to do user > authorization/session handling etc. If PAM configurations should be up to the administrator, there should be documentation to teach the administrator how to use them. The manual doesn't say anything about how to use pam-services in operating-system, so I submitted a bug report (bug #37583) requesting documentation. > Why do we decide for them? I think I agree with your point that if a non-default configuration is desired, administrators should be able to modify it, just like any other part of the configuration. Ideally they can always opt-out of details they don't want. I do not agree that we are deciding for the admins. This is just like the discussion about whether GuixSD should include the /usr/bin/env and /bin/sh special files by default, except there isn't any documentation on how to opt out of or extend the default PAM services. There must be a default for every detail. If a detail is found practical most of the time, I think it is good to either have it as a default (like /usr/bin/sh) or have a ready example of how to implement it viewable from the install environment (like what we do with desktop environments) so most users don't have to look up how to add it. That does not negate the ability of power users and administrators to opt out in the operating-system configuration. In the context of this patch, pam-limits is still opt-in. Perhaps a more flexible fix would be to make the pam-limits-service-type accept an optional list of strings identifying the configurations to create or modify to use pam-limits, with the default being %default-pam-limits-service-names defined as '("login" "su") which could then be appended to %slim-pam- service-names '("slim") or %gdm-pam-service-names '("gdm-password" ...). If you or anyone else wants to implement that proposal and update the documentation so admins will know how to configure it, feel free. I hope I did not misunderstand your comments. We can discuss this and your other concerns in a guix-devel thread.
From 6a0ced2a9ce956071290ea8bba2a74f8c9c8e5f5 Mon Sep 17 00:00:00 2001 From: Jesse Gibbons <jgibbons2357+guix@gmail.com> Date: Sat, 14 Sep 2019 16:35:39 -0600 Subject: [PATCH] Services: Check and modify gdm-password in pam-limits-service --- gnu/services/base.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/services/base.scm b/gnu/services/base.scm index 25716ef152..6ab7b110ec 100644 --- a/gnu/services/base.scm +++ b/gnu/services/base.scm @@ -1478,7 +1478,7 @@ information on the configuration file syntax." (module "pam_limits.so") (arguments '("conf=/etc/security/limits.conf"))))) (if (member (pam-service-name pam) - '("login" "su" "slim")) + '("login" "su" "slim" "gdm-password")) (pam-service (inherit pam) (session (cons pam-limits -- 2.23.0