Como modificar a linha “Exec” de um serviço dbus sem perder as alterações em caso de atualização

4

Estou enfrentando um problema desagradável com meu sistema. meu gerenciador de login (LightDM) está iniciando o gnome-keyring-daemon no login com sucesso e desbloqueando meu conjunto de chaves como deveria ( EDITAR: Tudo via PAM).

A coisa é que recebo o daemon do gnome-keyring iniciado com apenas um componente: secrets , mas preciso de todos eles: pkcs11 , secrets , ssh e gpg . Eu não sei porque o último não é o padrão, eu nem sei se devo relatar isso ao mantenedor do pacote.

O arquivo /usr/share/dbus-1/services/org.freedesktop.secrets.service define como o daemon do gnome-keyring deve ser executado:

[D-BUS Service]
Name=org.freedesktop.secrets
Exec=/usr/bin/gnome-keyring-daemon --start --foreground --components=secrets

Eu poderia apenas editá-lo no Emacs e resolver problemas, mas isso é sujo e minhas alterações serão eliminadas para a próxima atualização do pacote do gnome-keyring.

Portanto, a pergunta é: Como eu altero a linha Exec desse serviço enquanto evito que isso seja perdido na próxima atualização do sistema? Existe uma maneira de ativar serviços personalizados e desativar os serviços que vêm por padrão?

Os pacotes relevantes e suas versões instaladas no meu sistema.

$ LC_ALL=C pacman -Qi dbus gnome-keyring lightdm | egrep "(Name|Version)"
Name           : dbus
Version        : 1.8.8-1
Name           : gnome-keyring
Version        : 3.12.2-1
Name           : lightdm
Version        : 1:1.12.0-1
    
por shackra 07.10.2014 / 09:16

1 resposta

2

Ok, encontrei uma maneira de resolver esse problema. Isso não resolve minha questão diretamente, mas resolve o problema que me levou a perguntar aqui.

O problema

como estava, o gnome-keyring não estava desbloqueando minhas chaves GPG, então me pediram a senha da minha chave GPG toda vez que eu logar (porque o Emacs lê um arquivo .gpg para configuração), todas as minhas senhas estavam disponíveis depois do login, então o offlineimap não se queixou de não conseguir obter as senhas da minha conta de e-mail ao trabalhar.

Eu tentei então iniciar o gnome-keyring-daemon do .xprofile (que é lido pelo LightDM, outro DM pode ler arquivos diferentes) desta maneira:

#!/bin/bash

eval $(gnome-keyring-daemon --start --components=gpg,pkcs11,secrets,ssh)
export GPG_AGENT_INFO SSH_AUTH_SOCK

Após a reinicialização (eu gosto disso melhor do que logout e login novamente) e login, eu não fui solicitado para a minha senha da chave GPG, porém offlineimap estava reclamando sobre não ser capaz de obter as senhas das minhas contas de e-mail. Correndo cavalo-marinho, percebo que não há nenhuma seção Senhas .

A solução

Depois de lutar por algumas horas e tentar várias combinações diferentes (uma delas, mostrando a seção Senhas , mas com a pasta Login bloqueada!), descobri qual era a solução correta:

#!/bin/bash

source /etc/X11/xinit/xinitrc.d/30-dbus  # You need a dbus session, duh
eval $(gnome-keyring-daemon --start --components=gpg,pkcs11,secrets,ssh)
export GPG_AGENT_INFO SSH_AUTH_SOCK

Concluído. problema resolvido. el es fin, muchachos.

EDIT: Cuidado, o daemon do seu gnome-keyring pode emitir mais variáveis de ambiente para você exportar. Para ter certeza de que você não precisa mais do que GPG_AGENT_INFO ou SSH_AUTH_SOCK run gnome-keyring-daemon --start --components=gpg,pkcs11,secrets,ssh do seu shell e adicione mais variáveis à export sentença de acordo.

Por favor, note que o LightDM ainda está iniciando o gnome-keyring-daemon graças a sua configuração do PAM e eu não o recomendo que você altere tal configuração. No entanto , se você estiver inserindo sua senha após o login para desbloquear algo no gnome-keyring, pode ser porque o LightDM não está fornecendo sua senha a ela. Fiz esta adição ao módulo LightDM PAM /etc/pam.d/lightdm :

auth       optional    pam_gnome_keyring.so try_first_pass

A adição foi a coisa try_first_pass (lendo Os administradores do sistema Linux-PAM ' Guia não é uma má idéia), no meu sistema LightDM não tem esse parâmetro incluído.

Foi assim que resolvi meu problema com o Gnome Keyring!

    
por 07.10.2014 / 23:17