guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Enabling PAM support or not only..


From: muradm
Subject: Enabling PAM support or not only..
Date: Tue, 23 May 2023 08:24:50 +0300
User-agent: mu4e 1.10.2; emacs 30.0.50


Hi,

Last week was quite challenging and frustraiting, culminated by
sleepless nights in the weekend. Among other things at least
two serivces was broken, which are cups-service-type and
swaylock with screen-locker-service-type. Both issues are not
easy troubleshootable due to nature of PAM.


cups-service-type:

core-updates merging commit 3bacd3c76a added linux-pam to cups
package. Resulting in https://issues.guix.gnu.org/issue/63198.
While switching cups-service-type's default package from cups
to cups-minimal solves authentication issue, it however
broke ipptool printer finder tool. When PAM support is
compiled in, it does not work without proper PAM entry.

While workaround could be as simple as:

--8<---------------cut here---------------start------------->8---
+(simple-service
+ 'cups-pam-service
+ pam-root-service-type
+ (list (unix-pam-service "cups" #:allow-empty-passwords? #f)))
--8<---------------cut here---------------end--------------->8---

Total solution could be:
https://issues.guix.gnu.org/issue/63198#4


swaylock with screen-locker-service-type:

commit 146bae3979 added linux-pam to swaylock package. Resulting
in https://issues.guix.gnu.org/issue/63357#2.

While workaround could be as simple as:

--8<---------------cut here---------------start------------->8---
-(service screen-locker-service-type
-         (screen-locker-configuration
- "swaylock" (file-append swaylock "/bin/swaylock") #f)))))
+(simple-service
+ 'cups-pam-service
+ pam-root-service-type
+ (list (unix-pam-service "cups" #:allow-empty-passwords? #f)))
--8<---------------cut here---------------end--------------->8---

Detailed explanation with total solution is provided in
https://issues.guix.gnu.org/issue/63652.


The following coming afterwards to my mind:

GUIX at first is package manager, so there are a lot of them,
but of two types:
 - BOUND - ones referenced from (gnu system) (gnu services)
 - FREE-STANDING - ones not referenced

Then for BOUND packages, changing their behavior requires
more careful handling and probably such change is always
news worthy.

And for FREE-STANDING packages, changing their behavior is
totaly up to maintainers of packages and their users, not
much could be done here.

Having said that, we could go further with something like:

guix package --list-available-bound[=...]

This would be different from things likes "installed" or
illustrated on the graph of running system. The point here
is to know the packages that are referenced/used by GUIX
it self, not only as package manager.

When that available, careful handling and news worthines
could be automated probably.


muradm

Attachment: signature.asc
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]