Esse problema é corrigido e, no NixOS 18.03, isso pode ser obtido da seguinte maneira. Se o gerenciador de login for LightDM, defina a opção de configuração
{ # ...
security.pam.services.lightdm.enableGnomeKeyring = true;
}
Estou usando o GNOME 3 no NixOS 16.09 e não consigo descobrir como tornar o chaveiro "Login" desbloqueado automaticamente no login.
Eu suspeito que isso pode ser corrigido com a opção security.pam.services
, mas eu não sou especialista, e a documentação não é muito detalhada ou clara:
This option defines the PAM services. A service typically corresponds to a program that uses PAM, e.g. login or passwd. Each attribute of this set defines a PAM service, with the attribute name defining the name of the service.
Type: list or attribute set of submodules
Default:
[ ]
Um problema relacionado, mas menos importante, é que, se eu criar uma nova conta de usuário no NixOS e efetuar login com o GNOME, nenhum chaveiro será criado automaticamente. Na primeira vez que digito uma senha em algum lugar e aceito salvá-la em um chaveiro, recebo um diálogo solicitando uma senha para criar um novo chaveiro padrão:
Choose password for new keyring
An application wants to create new keyring called 'Default keyring'. Choose the password you want to use for it.
Note que ele quer criar um chaveiro chamado "Default keyring", e não "Login", como o Ubuntu faz.
Se eu digitar minha senha de login, o chaveiro será criado, mas no próximo login ele não será desbloqueado automaticamente e será solicitada uma senha na primeira vez que eu tentar usá-la.
Aqui é uma pergunta análoga sobre o KDE Wallet, que até agora não tem resposta aceita.
Existe uma edição relevante relatada para o Nixpkgs.
Esse problema é corrigido e, no NixOS 18.03, isso pode ser obtido da seguinte maneira. Se o gerenciador de login for LightDM, defina a opção de configuração
{ # ...
security.pam.services.lightdm.enableGnomeKeyring = true;
}
Você pode usar a opção security.pam.services.<name?>.text
.
Adicione à sua configuração:
pam.services = [
{ name = "gnome_keyring"
text = ''
auth optional ${gnome3.gnome_keyring}/lib/security/pam_gnome_keyring.so
session optional ${gnome3.gnome_keyring}/lib/security/pam_gnome_keyring.so auto_start
password optional ${gnome3.gnome_keyring}/lib/security/pam_gnome_keyring.so
'';
}
];
Isso adicionará a entrada pam necessária em /etc/pam.d
$ cat /etc/static/pam.d/gnome_keyring
auth optional /nix/store/ffcm7771dvva2xs56dzp6avxzf0pg35x-gnome-keyring-3.20.0/lib/security/pam_gnome_keyring.so
session optional /nix/store/ffcm7771dvva2xs56dzp6avxzf0pg35x-gnome-keyring-3.20.0/lib/security/pam_gnome_keyring.so auto_start
password optional /nix/store/ffcm7771dvva2xs56dzp6avxzf0pg35x-gnome-keyring-3.20.0/lib/security/pam_gnome_keyring.so
Tags gnome-keyring nixos gnome3