Portaal Portaal Pingviini veeb foorumi pealeht
  Viki  |  IRC  |  Otsing  |  Küsimused ja vastused  |  Profiil  |  Privaatsõnumite vaatamiseks logi sisse  | Logi sisse või Registreeru
<empty>
Vaata järgmist teemat
Vaata eelmist teemat

Postita uus teemaVasta teemale
Autor Sõnum
sips
Pingviini aktivist
Pingviini aktivist



Liitunud: 20.05.2006
Postitused: 288

Distributsioon: Arch
estonia.gif
postituspostitatud: 14.06.2010, 12:02  postituse pealkiri:  upower, consolekit, lid-close ja sleep  

kas keegi tark oskab ütelda, kuidas panna läpakas magama nö (lid) kaane sulgemisel, ja seda tavakasutaja õigustes?

X tõmmatakse käima nö "startx" käsuga (.xinitrc)
Kood:
export LC_MESSAGES="et_EE.UTF-8"
export LC_ALL="et_EE.UTF-8"

test for an existing bus daemon, just to be safe
if test -z "$DBUS_SESSION_BUS_ADDRESS" ; then
    eval `dbus-launch --sh-syntax --exit-with-session`
fi

exec ck-launch-session lxsession -s MidaIganes

lxsession käivitab aknahalduri, paneelid ja muud vidinad, ning lisaks ka batti, mis omakorda tõmbab käima upower'i.

Ehk, kui kogu see kupatus käima tiritakse on meil (tava kasutaja õigustega) jooksmas dbus'i-session, consolekit-session, upower-daemon jne.

Nii, kui see batti "töötab/jookseb", siis on meil nn systray's ilus batareii ikoon millele klikates avaneb menüü [[siin]] ("Suspend", "Hibernate"), kui sealt valida nt "Suspend", siis masin ka magama läheb (ka selle postituse kribamise ajal, kui kilkkisin ikoonil, et näha millise menüü see batti täpselt kuvab, käis kogemata masin "uinakul" ära kohal [[siin]] ja peale seda kirjutan oma jura edasi täpselt sealt, kust pooleli jäi).

Lihtsustatult - mul on tavakasutajana olemas kõik õigused masina "magama" panekuks (mida ma ka saan teha läbi "systray'l" oleva ikooni menüü), kuid kuidagi tuleks see toiming automatiseetida läbi läpaka kaane sulgemise.

PS! # upower --monitor-detail
annab "kaane" sulgemisel/avamisel väljundiks
Kood:
Monitoring activity from the power daemon. Press Ctrl+C to cancel.
[11:57:28.357]   daemon changed:
  daemon-version:  0.9.4
  can-suspend:     yes
  can-hibernate    yes
  on-battery:      no
  on-low-battery:  no
  lid-is-closed:   yes
  lid-is-present:   yes

[11:57:31.669]   daemon changed:
  daemon-version:  0.9.4
  can-suspend:     yes
  can-hibernate    yes
  on-battery:      no
  on-low-battery:  no
  lid-is-closed:   no
  lid-is-present:   yes

_________________
PS! Vanaisale ei saa Linuxit peale lasta.

-ordi-
Vana Pingviin
Vana Pingviin


Vanus: 27
Liitunud: 13.12.2008
Postitused: 821

Distributsioon: GNU/Linux
estonia.gif
postituspostitatud: 14.06.2010, 16:21  postituse pealkiri:  Re: upower, consolekit, lid-close ja sleep  

sips kirjutas:
kas keegi tark oskab ütelda, kuidas panna läpakas magama nö (lid) kaane sulgemisel, ja seda tavakasutaja õigustes?

X tõmmatakse käima nö "startx" käsuga (.xinitrc)
Kood:
export LC_MESSAGES="et_EE.UTF-8"
export LC_ALL="et_EE.UTF-8"

test for an existing bus daemon, just to be safe
if test -z "$DBUS_SESSION_BUS_ADDRESS" ; then
    eval `dbus-launch --sh-syntax --exit-with-session`
fi

exec ck-launch-session lxsession -s MidaIganes

lxsession käivitab aknahalduri, paneelid ja muud vidinad, ning lisaks ka batti, mis omakorda tõmbab käima upower'i.

Ehk, kui kogu see kupatus käima tiritakse on meil (tava kasutaja õigustega) jooksmas dbus'i-session, consolekit-session, upower-daemon jne.

Nii, kui see batti "töötab/jookseb", siis on meil nn systray's ilus batareii ikoon millele klikates avaneb menüü [[siin]] ("Suspend", "Hibernate"), kui sealt valida nt "Suspend", siis masin ka magama läheb (ka selle postituse kribamise ajal, kui kilkkisin ikoonil, et näha millise menüü see batti täpselt kuvab, käis kogemata masin "uinakul" ära kohal [[siin]] ja peale seda kirjutan oma jura edasi täpselt sealt, kust pooleli jäi).

Lihtsustatult - mul on tavakasutajana olemas kõik õigused masina "magama" panekuks (mida ma ka saan teha läbi "systray'l" oleva ikooni menüü), kuid kuidagi tuleks see toiming automatiseetida läbi läpaka kaane sulgemise.

PS! # upower --monitor-detail
annab "kaane" sulgemisel/avamisel väljundiks
Kood:
Monitoring activity from the power daemon. Press Ctrl+C to cancel.
[11:57:28.357]   daemon changed:
  daemon-version:  0.9.4
  can-suspend:     yes
  can-hibernate    yes
  on-battery:      no
  on-low-battery:  no
  lid-is-closed:   yes
  lid-is-present:   yes

[11:57:31.669]   daemon changed:
  daemon-version:  0.9.4
  can-suspend:     yes
  can-hibernate    yes
  on-battery:      no
  on-low-battery:  no
  lid-is-closed:   no
  lid-is-present:   yes


Miks sa KDE enda seadistusi vms ei kasuta, ma saan valida küll seda, kas mu läpakas läheb magama kaane sulgemisel või mitte, või sain ma kõigest valesti aru, ei viitsinud väga süveneda.


sips
Pingviini aktivist
Pingviini aktivist



Liitunud: 20.05.2006
Postitused: 288

Distributsioon: Arch
estonia.gif
postituspostitatud: 18.06.2010, 03:49  postituse pealkiri:  Re: upower, consolekit, lid-close ja sleep  

-ordi- kirjutas:
Miks sa KDE enda seadistusi vms ei kasuta, ma saan valida küll seda, kas mu läpakas läheb magama kaane sulgemisel või mitte, või sain ma kõigest valesti aru, ei viitsinud väga süveneda.

Sest pole ei kde, gnome, xfce, ega ühegi teise DE "powermanageri" installitud ja ei tunne puudust kah.

Oma läpaka kaane sulgemise ja "sleep'i" probleemi lahendasin väikse skriptiga, mis teeb täpselt seda mis vaja
Kood:
#!/usr/bin/env python

import gobject
import dbus, dbus.service
from dbus.mainloop.glib import DBusGMainLoop
dbus.mainloop.glib.DBusGMainLoop(set_as_default=True)

sess_bus = dbus.SystemBus()

try:
   upower_obj = sess_bus.get_object('org.freedesktop.UPower', '/org/freedesktop/UPower')
   upower_manager = dbus.Interface(upower_obj, 'org.freedesktop.UPower')
except dbus.DBusException: # No other copy running
   exit('--- Kas upower jookseb? ---')

properties = dbus.Interface(upower_obj, 'org.freedesktop.DBus.Properties')

if not properties.Get('org.freedesktop.UPower', 'LidIsPresent'):
   exit ('!LidIsPresent')

if not properties.Get('org.freedesktop.UPower', 'CanSuspend'):
   exit ('!CanSuspend')

def try_to_sleep():
   if properties.Get('org.freedesktop.UPower', 'LidIsClosed'):
      upower_manager.AboutToSleep()
      print 'LidIsClosed, let\'s sleep'
      try:
         upower_manager.Suspend()
      except:
         print 'Nagu arvata oligi, viskas errori'
      #dbus.Interface(upower_obj, 'org.freedesktop.UPower').Suspend()

sess_bus.add_signal_receiver(try_to_sleep, dbus_interface="org.freedesktop.UPower", signal_name="Changed")

loop = gobject.MainLoop()
loop.run()

Vähe bugine on, aga vähemalt teeb seda mis vaja.

_________________
PS! Vanaisale ei saa Linuxit peale lasta.

Näita (aja järgi):      
Postita uus teemaVasta teemale


Vaata järgmist teemat
Vaata eelmist teemat
Powered by phpBB2 Plus based on phpBB © 2001/7 phpBB Group