c4pp4 / gentoo-unity7

A Gentoo overlay to build the Unity7 user interface.
21 stars 2 forks source link

Gnome Polkit successfully built but not running #13

Closed cspark-development closed 2 years ago

cspark-development commented 2 years ago

Gnome Polkit does not appear to be automatically running but does appear to be building/installing successfully.

Running the command pkexec to elevate the session yields the following output after typing password :

==== AUTHENTICATING FOR org.freedesktop.policykit.exec ====
Authentication is needed to run `/bin/bash' as the super user
Authenticating as: user
Password: 
polkit-agent-helper-1: error response to PolicyKit daemon: GDBus.Error:org.freedesktop.PolicyKit1.Error.Failed: No session for cookie
==== AUTHENTICATION FAILED ====
Error executing command as another user: Not authorized

This incident has been reported.

I tried running emerge -av gnome-polkit to rebuild the polkit to get the graphical prompt and it appears to have built successfully :

--- replaced obj /usr/libexec/polkit-gnome-authentication-agent-1
--- replaced dir /usr/libexec
--- replaced dir /usr
--- replaced obj /etc/xdg/autostart/polkit-gnome-authentication-agent-1.desktop
--- replaced dir /etc/xdg/autostart
--- replaced dir /etc/xdg
--- replaced dir /etc

This does not fix the issue however.

Running pkexec when manually running /usr/libexec/polkit-gnome-authentication-agent-1 prompts for the graphical prompt and goes through without any issue.

It appears that the Unity session is not running /usr/libexec/polkit-gnome-authentication-agent-1 which after doing will resolve the issues.

As a workaround for now you can just add this to the xinitrc or similar startup file.

c4pp4 commented 2 years ago

Hi, what is the content of /etc/xdg/autostart/polkit-gnome-authentication-agent-1.desktop?

cspark-development commented 2 years ago

Hi there,

Appears to be the default one for gnome :

[Desktop Entry]
Name=PolicyKit Authentication Agent
Comment=PolicyKit Authentication Agent
Exec=/usr/libexec/polkit-gnome-authentication-agent-1
Terminal=false
Type=Application
Categories=
NoDisplay=true
NotShowIn=MATE;KDE;
AutostartCondition=GNOME3 unless-session gnome
c4pp4 commented 2 years ago

and output of

ls -l /usr/libexec/polkit-gnome-authentication-agent-1
ls -l /etc/xdg/autostart/polkit-gnome-authentication-agent-1.desktop
echo $XDG_CURRENT_DESKTOP
echo $XDG_CONFIG_DIRS

Try to replace polkit-gnome-authentication-agent-1.desktop with the one from here http://archive.ubuntu.com/ubuntu/pool/universe/p/policykit-1-gnome/policykit-1-gnome_0.105-7ubuntu2.debian.tar.xz

cspark-development commented 2 years ago

Here are the outputs :

ls -l /usr/libexec/polkit-gnome-authentication-agent-1 : rwxr-xr-x 1 root root 52792 May 4 20:33 /usr/libexec/polkit-gnome-authentication-agent-1

ls -l /etc/xdg/autostart/polkit-gnome-authentication-agent-1.desktop : -rw-r--r-- 1 root root 271 May 4 20:33 /etc/xdg/autostart/polkit-gnome-authentication-agent-1.desktop

echo $XDG_CURRENT_DESKTOP : Unity:Unity7

echo $XDG_CONFIG_DIRS : /usr/share/upstart/systemd-session:/etc/xdg

So I went ahead and tried using the polkit-gnome-authentication-agent-1.desktop with the one from here http://archive.ubuntu.com/ubuntu/pool/universe/p/policykit-1-gnome/policykit-1-gnome_0.105-7ubuntu2.debian.tar.xz

[Desktop Entry]
Name=PolicyKit Authentication Agent
Name[ar]=مدير الاستيثاق PolicyKit
Name[be]=PolicyKit - аґент аўтэнтыфікацыі
Name[bn_IN]=PolicyKit অনুমোদনের এজেন্ট
Name[ca]=Agent d'autenticació del PolicyKit
Name[cs]=Ověřovací agent PolicyKit
Name[da]=Godkendelsesprogrammet PolicyKit
Name[de]=Legitimationsdienst von PolicyKit
Name[el]=Πράκτορας πιστοποίησης PolicyKit
Name[en_GB]=PolicyKit Authentication Agent
Name[es]=Agente de autenticación de PolicyKit
Name[eu]=PolicyKit autentifikatzeko agentea
Name[fi]=PolicytKit-tunnistautumisohjelma
Name[fr]=Agent d'authentification de PolicyKit
Name[gl]=Axente de autenticación PolicyKit
Name[gu]=PolicyKit સત્તાધિકરણ એજન્ટ
Name[hi]=PolicyKit प्रमाणीकरण प्रतिनिधि
Name[hu]=PolicyKit hitelesítési ügynök
Name[it]=Agente di autenticazione per PolicyKit
Name[ja]=PolicyKit 認証エージェント
Name[kn]=PolicyKit ದೃಢೀಕರಣ ಮಧ್ಯವರ್ತಿ
Name[lt]=PolicyKit tapatybės nustatymo agentas
Name[ml]=പോളിസിക്കിറ്റ് ഓഥന്റിക്കേഷന്‍ ഏജന്റ്
Name[mr]=PolicyKit ऑथेंटीकेशन एजेंट
Name[or]=PolicyKit ବୈଧିକରଣ ସଦସ୍ୟ
Name[pa]=ਪਾਲਸੀਕਿੱਟ ਪਰਮਾਣਕਿਤਾ ਏਜੰਟ
Name[pl]=Agent uwierzytelniania PolicyKit
Name[pt]=Agente de Autenticação PolicyKit
Name[pt_BR]=Agente de autenticação PolicyKit
Name[ro]=Agent de autentificare PolicyKit
Name[sk]=Agent PolicyKit na overovanie totožnosti
Name[sl]=PolicyKit program overjanja
Name[sv]=Autentiseringsagent för PolicyKit
Name[ta]=PolicyKit அங்கீகார முகவர்
Name[te]=పాలసీకిట్ ధృవీకరణ ప్రతినిధి
Name[th]=ตัวกลางสำหรับยืนยันตัวบุคคล PolicyKit
Name[uk]=Агент автентифікації PolicyKit
Name[zh_CN]=PolicyKit 认证代理
Name[zh_HK]=PolicyKit 驗證代理程式
Name[zh_TW]=PolicyKit 驗證代理程式
Comment=PolicyKit Authentication Agent
Comment[ar]=مدير الاستيثاق PolicyKit
Comment[be]=PolicyKit - аґент аўтэнтыфікацыі
Comment[bn_IN]=PolicyKit অনুমোদনের এজেন্ট
Comment[ca]=Agent d'autenticació del PolicyKit
Comment[cs]=Ověřovací agent PolicyKit
Comment[da]=Godkendelsesprogrammet PolicyKit
Comment[de]=Legitimationsdienst von PolicyKit
Comment[el]=Πράκτορας πιστοποίησης PolicyKit
Comment[en_GB]=PolicyKit Authentication Agent
Comment[es]=Agente de autenticación de PolicyKit
Comment[eu]=PolicyKit autentifikatzeko agentea
Comment[fi]=PolicytKit-tunnistautumisohjelma
Comment[fr]=Agent d'authentification de PolicyKit
Comment[gl]=Axente de autenticación PolicyKit
Comment[gu]=PolicyKit સત્તાધિકરણ એજન્ટ
Comment[hi]=PolicyKit प्रमाणीकरण प्रतिनिधि
Comment[hu]=PolicyKit hitelesítési ügynök
Comment[it]=Agente di autenticazione per PolicyKit
Comment[ja]=PolicyKit 認証エージェント
Comment[kn]=PolicyKit ದೃಢೀಕರಣ ಮಧ್ಯವರ್ತಿ
Comment[lt]=PolicyKit tapatybės nustatymo agentas
Comment[ml]=പോളിസിക്കിറ്റ് ഓഥന്റിക്കേഷന്‍ ഏജന്റ്
Comment[mr]=PolicyKit ऑथेंटीकेशन एजेंट
Comment[or]=PolicyKit ବୈଧିକରଣ ସଦସ୍ୟ
Comment[pa]=ਪਾਲਸੀਕਿੱਟ ਪਰਮਾਣਕਿਤਾ ਏਜੰਟ
Comment[pl]=Agent uwierzytelniania PolicyKit
Comment[pt]=Agente de Autenticação PolicyKit
Comment[pt_BR]=Agente de autenticação PolicyKit
Comment[ro]=Agent de autentificare PolicyKit
Comment[sk]=Agent PolicyKit na overovanie totožnosti
Comment[sl]=PolicyKit program overjanja
Comment[sv]=Autentiseringsagent för PolicyKit
Comment[ta]=PolicyKit அங்கீகார முகவர்
Comment[te]=పాలసీకిట్ ధృవీకరణ ప్రతినిధి
Comment[th]=ตัวกลางสำหรับยืนยันตัวบุคคล PolicyKit
Comment[uk]=Агент автентифікації PolicyKit
Comment[zh_CN]=PolicyKit 认证代理
Comment[zh_HK]=PolicyKit 驗證代理程式
Comment[zh_TW]=PolicyKit 驗證代理程式
Exec=/usr/lib/policykit-1-gnome/polkit-gnome-authentication-agent-1
Terminal=false
Type=Application
Categories=
NoDisplay=true
OnlyShowIn=XFCE;Unity;X-Cinnamon;
X-GNOME-AutoRestart=true
AutostartCondition=GNOME3 unless-session gnome

This didn't work, however I noticed that the Exec= field was incorrectly set to /usr/lib/policykit-1-gnome/polkit-gnome-authentication-agent-1

Changing this to Exec=/usr/libexec/polkit-gnome-authentication-agent-1 worked

It appears therefore that the fix is for the http://archive.ubuntu.com/ubuntu/pool/universe/p/policykit-1-gnome/policykit-1-gnome_0.105-7ubuntu2.debian.tar.xz autostart file to be included with the gnome-polkit package instead and a symlink from /usr/libexec/polkit-gnome-authentication-agent-1 to /usr/lib/policykit-1-gnome/polkit-gnome-authentication-agent-1 to be created.

Alternatively the following can just be used as the new desktop file with no other changes :

[Desktop Entry]
Name=PolicyKit Authentication Agent
Name[ar]=مدير الاستيثاق PolicyKit
Name[be]=PolicyKit - аґент аўтэнтыфікацыі
Name[bn_IN]=PolicyKit অনুমোদনের এজেন্ট
Name[ca]=Agent d'autenticació del PolicyKit
Name[cs]=Ověřovací agent PolicyKit
Name[da]=Godkendelsesprogrammet PolicyKit
Name[de]=Legitimationsdienst von PolicyKit
Name[el]=Πράκτορας πιστοποίησης PolicyKit
Name[en_GB]=PolicyKit Authentication Agent
Name[es]=Agente de autenticación de PolicyKit
Name[eu]=PolicyKit autentifikatzeko agentea
Name[fi]=PolicytKit-tunnistautumisohjelma
Name[fr]=Agent d'authentification de PolicyKit
Name[gl]=Axente de autenticación PolicyKit
Name[gu]=PolicyKit સત્તાધિકરણ એજન્ટ
Name[hi]=PolicyKit प्रमाणीकरण प्रतिनिधि
Name[hu]=PolicyKit hitelesítési ügynök
Name[it]=Agente di autenticazione per PolicyKit
Name[ja]=PolicyKit 認証エージェント
Name[kn]=PolicyKit ದೃಢೀಕರಣ ಮಧ್ಯವರ್ತಿ
Name[lt]=PolicyKit tapatybės nustatymo agentas
Name[ml]=പോളിസിക്കിറ്റ് ഓഥന്റിക്കേഷന്‍ ഏജന്റ്
Name[mr]=PolicyKit ऑथेंटीकेशन एजेंट
Name[or]=PolicyKit ବୈଧିକରଣ ସଦସ୍ୟ
Name[pa]=ਪਾਲਸੀਕਿੱਟ ਪਰਮਾਣਕਿਤਾ ਏਜੰਟ
Name[pl]=Agent uwierzytelniania PolicyKit
Name[pt]=Agente de Autenticação PolicyKit
Name[pt_BR]=Agente de autenticação PolicyKit
Name[ro]=Agent de autentificare PolicyKit
Name[sk]=Agent PolicyKit na overovanie totožnosti
Name[sl]=PolicyKit program overjanja
Name[sv]=Autentiseringsagent för PolicyKit
Name[ta]=PolicyKit அங்கீகார முகவர்
Name[te]=పాలసీకిట్ ధృవీకరణ ప్రతినిధి
Name[th]=ตัวกลางสำหรับยืนยันตัวบุคคล PolicyKit
Name[uk]=Агент автентифікації PolicyKit
Name[zh_CN]=PolicyKit 认证代理
Name[zh_HK]=PolicyKit 驗證代理程式
Name[zh_TW]=PolicyKit 驗證代理程式
Comment=PolicyKit Authentication Agent
Comment[ar]=مدير الاستيثاق PolicyKit
Comment[be]=PolicyKit - аґент аўтэнтыфікацыі
Comment[bn_IN]=PolicyKit অনুমোদনের এজেন্ট
Comment[ca]=Agent d'autenticació del PolicyKit
Comment[cs]=Ověřovací agent PolicyKit
Comment[da]=Godkendelsesprogrammet PolicyKit
Comment[de]=Legitimationsdienst von PolicyKit
Comment[el]=Πράκτορας πιστοποίησης PolicyKit
Comment[en_GB]=PolicyKit Authentication Agent
Comment[es]=Agente de autenticación de PolicyKit
Comment[eu]=PolicyKit autentifikatzeko agentea
Comment[fi]=PolicytKit-tunnistautumisohjelma
Comment[fr]=Agent d'authentification de PolicyKit
Comment[gl]=Axente de autenticación PolicyKit
Comment[gu]=PolicyKit સત્તાધિકરણ એજન્ટ
Comment[hi]=PolicyKit प्रमाणीकरण प्रतिनिधि
Comment[hu]=PolicyKit hitelesítési ügynök
Comment[it]=Agente di autenticazione per PolicyKit
Comment[ja]=PolicyKit 認証エージェント
Comment[kn]=PolicyKit ದೃಢೀಕರಣ ಮಧ್ಯವರ್ತಿ
Comment[lt]=PolicyKit tapatybės nustatymo agentas
Comment[ml]=പോളിസിക്കിറ്റ് ഓഥന്റിക്കേഷന്‍ ഏജന്റ്
Comment[mr]=PolicyKit ऑथेंटीकेशन एजेंट
Comment[or]=PolicyKit ବୈଧିକରଣ ସଦସ୍ୟ
Comment[pa]=ਪਾਲਸੀਕਿੱਟ ਪਰਮਾਣਕਿਤਾ ਏਜੰਟ
Comment[pl]=Agent uwierzytelniania PolicyKit
Comment[pt]=Agente de Autenticação PolicyKit
Comment[pt_BR]=Agente de autenticação PolicyKit
Comment[ro]=Agent de autentificare PolicyKit
Comment[sk]=Agent PolicyKit na overovanie totožnosti
Comment[sl]=PolicyKit program overjanja
Comment[sv]=Autentiseringsagent för PolicyKit
Comment[ta]=PolicyKit அங்கீகார முகவர்
Comment[te]=పాలసీకిట్ ధృవీకరణ ప్రతినిధి
Comment[th]=ตัวกลางสำหรับยืนยันตัวบุคคล PolicyKit
Comment[uk]=Агент автентифікації PolicyKit
Comment[zh_CN]=PolicyKit 认证代理
Comment[zh_HK]=PolicyKit 驗證代理程式
Comment[zh_TW]=PolicyKit 驗證代理程式
Exec=/usr/libexec/polkit-gnome-authentication-agent-1
Terminal=false
Type=Application
Categories=
NoDisplay=true
OnlyShowIn=XFCE;Unity;X-Cinnamon;
X-GNOME-AutoRestart=true
AutostartCondition=GNOME3 unless-session gnome
c4pp4 commented 2 years ago

@Spacur Would you mind to test the old one .desktop file: 1) with OnlyShowIn=XFCE;Unity;X-Cinnamon; insted of NotShowIn=MATE;KDE; 2) with X-GNOME-AutoRestart=true

Thank you in advance.