Nová čísla časopisů od nakladatelství Raspberry Pi: MagPi 140 (pdf) a HackSpace 77 (pdf).
ESPHome, tj. open source systém umožňující nastavovat zařízení s čipy ESP (i dalšími) pomocí konfiguračních souborů a připojit je do domácí automatizace, například do Home Assistantu, byl vydán ve verzi 2024.4.0.
LF AI & Data Foundation patřící pod Linux Foundation spustila Open Platform for Enterprise AI (OPEA).
Neziskové průmyslové konsorcium Khronos Group vydalo verzi 1.1 specifikace OpenXR (Wikipedie), tj. standardu specifikujícího přístup k platformám a zařízením pro XR, tj. platformám a zařízením pro AR (rozšířenou realitu) a VR (virtuální realitu). Do základu se z rozšíření dostalo XR_EXT_local_floor. Společnost Collabora implementuje novou verzi specifikace do platformy Monado, tj. open source implementace OpenXR.
Byla vydána nová verze 0.38.0 multimediálního přehrávače mpv (Wikipedie) vycházejícího z přehrávačů MPlayer a mplayer2. Přehled novinek, změn a oprav na GitHubu. Požadován je FFmpeg 4.4 nebo novější a také libplacebo 6.338.2 nebo novější.
ClamAV (Wikipedie), tj. multiplatformní antivirový engine s otevřeným zdrojovým kódem pro detekci trojských koní, virů, malwaru a dalších škodlivých hrozeb, byl vydán ve verzích 1.3.1, 1.2.3 a 1.0.6. Ve verzi 1.3.1 je mimo jiné řešena bezpečnostní chyba CVE-2024-20380.
Digitální a informační agentura (DIA) oznámila (PDF, X a Facebook), že mobilní aplikace Portál občana je ode dneška oficiálně venku.
#HACKUJBRNO 2024, byly zveřejněny výsledky a výstupy hackathonu města Brna nad otevřenými městskými daty, který se konal 13. a 14. dubna 2024.
Společnost Volla Systeme stojící za telefony Volla spustila na Kickstarteru kampaň na podporu tabletu Volla Tablet s Volla OS nebo Ubuntu Touch.
Společnost Boston Dynamics oznámila, že humanoidní hydraulický robot HD Atlas šel do důchodu (YouTube). Nastupuje nová vylepšená elektrická varianta (YouTube).
startx
. Jakmile se maj Xka najet přes xdm je problém ...
$ps aux | grep console-kit
Je sezení registrované jako lokální a aktivní? Předesílám, že pokud používáte jiný display manager než GDM, tak řádně registrované asi nebude (např. bude jako nelokální). V tom případě bude nejrychlejší nainstalovat GDM a mohlo by to začít fungovat.
Co tedy vypíše:
$ck-list-sessions
$echo $XDG_SESSION_COOKIE
$dbus-send --system --print-reply --dest=org.freedesktop.ConsoleKit \
/org/freedesktop/ConsoleKit/Manager \
org.freedesktop.ConsoleKit.Manager.GetSessionForCookie \
string:$XDG_SESSION_COOKIE
$ dbus-send --system --print-reply --dest=org.freedesktop.ConsoleKit \
/org/freedesktop/ConsoleKit/Manager \
org.freedesktop.ConsoleKit.Manager.GetSessions
Co udělá:
$ dbus-send --system --print-reply --dest=org.freedesktop.ConsoleKit \
/org/freedesktop/ConsoleKit/Manager \
org.freedesktop.ConsoleKit.Manager.Stop
Měl by se zavolat rovnou /sbin/shutdown nebo zobrazit
autorizační dialog, pokud je přihlášeno více uživatelů nebo není sezení řádně registrované. Něco podobného by měl dělat session manager po ukončení sezení, nebo zavolá místo console-kit HAL, ten potom volá console-kit.
Jaký je obsah souboru /usr/share/polkit-1/actions/org.freedesktop.policykit.policy
Co vypíše:
$ grep -rn AdminIdentities /etc/polkit-1/localauthority.conf.d/
Pokud tam bude jen AdminIdentities=unix-group:sudo, jste členem skupiny sudo?
Pokud tam bude i AdminIdentities=unix-user:0, tak je to jedno, je by to žádalo heslo roota místo vašeho (při vypnutí/resetu pokud je příhlašené více uživatelů).
Jaký display manager používáte? GDM? Ten možná stále jako jediný umí řádně registrovat console-kit sezení. ck-launch-session volané z /etc/X11/Xsession.d/90consolekit nebo přímo z ~/.xinitrc nedávno ještě nestačilo. Display manager musel přímo volat console-kit, např. přes DBUS, jinak nebylo vytvořené sezení jako lokální.
Petr
Používám xfce 4.8 a s parametrem USE="-hal". Používám xdm. Více uživatelů.
ps aux | grep console-kit root 1944 0.0 0.0 2860 732 pts/0 S+ 08:49 0:00 grep --colour=auto console-kit root 12760 0.0 0.1 25928 1552 ? Ssl 00:43 0:00 /usr/sbin/console-kit-daemon
$ck-list-sessions $echo $XDG_SESSION_COOKIE
Nevypsali vůbec nic $XDG_SESSION_COOKIE vyhodilo prázdný řádek
dbus-send --system --print-reply --dest=org.freedesktop.ConsoleKit \ /org/freedesktop/ConsoleKit/Manager \ org.freedesktop.ConsoleKit.Manager.Stop
process 2057: arguments to dbus_message_new_method_call() were incorrect, assertion "_dbus_check_is_valid_path (path)" failed in file /var/tmp/portage/sys-apps/dbus-1.4.6/work/dbus-1.4.6/dbus/dbus-message.c line 1202. This is normally a bug in some application using the D-Bus library. D-Bus not built with -rdynamic so unable to print a backtrace Neúspěšně ukončen (SIGABRT)
/usr/share/polkit-1/actions/org.freedesktop.policykit.policy
grep -rn AdminIdentities /etc/polkit-1/localauthority.conf.d/
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE policyconfig PUBLIC
"-//freedesktop//DTD PolicyKit Policy Configuration 1.0//EN"
"http://www.freedesktop.org/standards/PolicyKit/1/policyconfig.dtd">
<policyconfig>
<vendor>The PolicyKit Project</vendor>
<vendor_url>http://hal.freedesktop.org/docs/PolicyKit/</vendor_url>
<action id="org.freedesktop.policykit.exec">
<description>Run programs as another user</description>
<message>Authentication is required to run a program as another user</message>
<defaults>
<allow_any>auth_admin</allow_any>
<allow_inactive>auth_admin</allow_inactive>
<allow_active>auth_admin</allow_active>
</defaults>
</action>
<action id="org.freedesktop.policykit.lockdown">
<description>Configure lock down for an action</description>
<message>Authentication is required to configure lock down policy</message>
<defaults>
<allow_any>no</allow_any>
<allow_inactive>no</allow_inactive>
<allow_active>auth_admin</allow_active>
</defaults>
<annotate key="org.freedesktop.policykit.exec.path">/usr/bin/pklalockdown</annotate>
</action>
</policyconfig>
exec ck-launch-session startxfce4
To už by mělo být sezení registrované. Bude ale pravděpodobně nelokální a neaktivní, a tady začnou problémy. Takže dále musíte nainstalovat (lib)pam-ck-connector a do /etc/pam.d/ pridat
session optional pam_ck_connector.so
do konfigurace pro login. Na konci nesmí být parametr nox11 (ten ale přidejte pokud, začnete používat GDM). Nevím přesně jaký je to soubor pro Gentoo...
Potom by sezení v ck-list-sessions už mělo být lokální, ale možná stále nebude aktivní. A s tím nevím jak dál, proto používám GDM, které registruje sezení přímo. Výchozí konfigurace console-kit totiž neumožňuje vypnout počítač z neaktivního sezení (soubor /usr/share/polkit-1/actions/org.freedesktop.consolekit.policy)
Změnit to samozřejmě můžete, např. vytvořením souboru
/etc/polkit-1/localauthority/50-local.d/70-consolekit.pkla s obsahem:
[consolekit] Identity=unix-user:uživatel Action=org.freedesktop.consolekit.system.* ResultAny=no ResultInactive=yes ResultActive=yesNebo jen pro určité akce z možných org.freedesktop.consolekit.system.{stop,stop-multiple-users,restart,restart-multiple-users}, také místo ResultInactive=yes můžete použít auth_admin_keep, to si vyžádá autorizaci admina. Ke zobrazení dialogu autorizace budete asi potřebovat i policykit-1-gnome (nebo polkit-gnome ?) nebo jiného spuštěného agenta, nevím jestli má XFCE nějakého vlastního. (ps aux | grep policykit-1-gnome). Nebo spustit ručně /usr/lib/policykit-1-gnome/polkit-gnome-authentication-agent-1. Debian ho má /etc/xdg/autostart/, takže se spouští automaticky. Zda máte právo vypnout/restartovat počítač si můžete kdykoliv ověřit příkazem:
pkcheck --action-id org.freedesktop.consolekit.system.stop --process $$ --allow-user-interaction
Při použití GDM místo XDM, tohle všechno není nutné, protože GDM registruje sezení v console-kit rovnou (ne přes polo-funkční ck-launch-session). Upravit konfiguraci console-kit byste ale mohl chtít stejně, např. pokud byste chtěl vypínat počítač bez autorizace admina při více přihlášených uživatelích.
A samozřejmě potřebujte v XFCE podporu pro dbus, policy-kit a console-kit. Pokud Vám funguje suspend/hibernace, tak za předpokladu, že se používá upower, máte asi podporu minimálně pro policy-kit. Zkontrolujte hlavně, že je přeložené s podporou console-kit.
$ dbus-send --system --print-reply --dest=org.freedesktop.ConsoleKit /org/freedesktop/ConsoleKit/Manager org.freedesktop.ConsoleKit.Manager.GetSessionForCookie string:$XDG_SESSION_COOKIE
Error org.freedesktop.ConsoleKit.Manager.GeneralError: Unable to find session for cookie
$ dbus-send --system --print-reply --dest=org.freedesktop.ConsoleKit /org/freedesktop/ConsoleKit/Manager org.freedesktop.ConsoleKit.Manager.GetSessions
method return sender=:1.0 -> dest=:1.14 reply_serial=2
array [
]
dbus-send --system --print-reply --dest=org.freedesktop.ConsoleKit /org/freedesktop/ConsoleKit/Manager org.freedesktop.ConsoleKit.Manager.Stop
Error org.freedesktop.ConsoleKit.Manager.NotPrivileged: Not Authorized
/etc/X11/xinit/xinitrc.d/90-consolekit
Script 90consolekit vlastním.
/etc/X11/xinit/xinitrc.d/90-consolekit
Tohle bude asi jen pro startx a v jedné z odpovědí jste psal, že startx funguje. Já bych tedy zkontroloval konfiguraci (a skripty) XDM:
1) zjistěte jaký konfigurační soubor XDM používá, buď je to argument parametru -config (pokud se předává v init scriptu) nebo výchozí konfigurační soubor, který najdete v manuálové stránce xdm v sekci FILES (v debianu /etc/X11/xdm/xdm-config).
2) V něm najděte hodnotu DisplayManager*session (v debianu /etc/X11/xdm/Xsession)
a tak postupujte dál... V debianu /etc/X11/xdm/Xsession inkluduje soubor /etc/X11/Xsession a ten zase všechny soubory v /etc/X11/Xsession.d/ a tedy také /etc/X11/Xsession.d/90consolekit
Pokud máte soubor 90consolekit pouze v /etc/X11/xinit/xinitrc.d/ tak by XDM muselo inkludovat tento soubor, ale to se mi nezdá, /etc/X11/xinit je pro startx. Klidně můžete zkusit nastavit
DisplayManager*session na /etc/X11/xinit/xinitrc, pokud tento existuje nebo jiný, který inkluduje /etc/X11/xinit/xinitrc.d/*. Ale pokud chybí i ostatní konfigurace pro XDM, kdo ví jak by to dopadlo.
Nejsem schopen poradit nic specifického pro gentoo, takže tohle je má poslední odpověď. Pokud projdete systém konfigurace XDM (pár skriptů), tak snad řešení najdete. Pokud chybí skripty pro XDM, tak je nějak obnovit, v Gentoo nevím jak.
Takže se loučím a přeji hodně zdaru!
Tiskni Sdílej: