Prisijungti

Cuttlefish ir touchpad

  • 19 Lap '15

Sveiki gudragalviai, matau sprendžiat bet kokią problemą sėkmingai. Štai jums dar viena

Radau programą - Cuttlefish - ir scriptą jai, kuriuo junginėju skirtingą ekrano pašvietimą teplepui. Kai įkišu maitinimo laidą, programa automatiškai padaro 100 % apšvietimą, ištraukiu - sumažina tiek, kiek nurodžiau scripte. Jei kam įdomu, galėsiu parašyti, kaip tai veikia.

Dabar pati problema: kaip padaryti, kad Lenovo M30 touchpadas taip pat veiktų, kai ištraukiamas belaidės pelės adapteris iš USB lizdo, ir nustotų veikti, kai įkištas (na, šiaip tai geriau, kai pelė įjungiama/išjungiama jungtuku ant pačios pelės). Čia keistas dalykas - pats kompiuteris niekaip neįsimena, kada reikia išjungti padą, jis veikia visada. Išjungiu (F6), o po suspendo ar po išjungimo vėl jis veikia. Norėtųsi automatiškai nustatyt, kad neveiktų, ir tik esant reikalui (be pelės) veiktų.

Kaip turėtų atrodyti scriptas ir kur jis turėtų būti padėtas?

TechtronicMindaugas N.
  • 19 Lap '15

Kaip tai padaryti yra pilnas internetas, parasysiu viena is budu kuri pats naudociau tokiu atveju.

Modernios GNU/Linux distros naudoja systemd/udev, naudokis tuom. Tarkim jeigu nori atlikti koki veiksma kai mouse pajungi, gali sukurti faila/rule (jeigu jo dar nera) /etc/udev/rules.d/mouse.rules ir jame:

SUBSYSTEM=="input", KERNEL=="mouse[0-9]*", ACTION=="add", RUN+="komanda"

O jeigu atjungi mouse:

SUBSYSTEM=="input", KERNEL=="mouse[0-9]*", ACTION=="remove", RUN+="komanda"

udevadm komanda pades surasti tikslius events.

  • 20 Lap '15

Hmmm... Techtronic atsakymas kelia daug klausimų. Kaip skamba "komanda"? Nerandu niekaip, kiek išbandžiau, nė viena nejungia per terminalą touchpado.

TechtronicMindaugas N.
  • 20 Lap '15

@Dimavicius gali naudoti xinput arba synclient, nepamirsk kad reikes nustatyti DISPLAY kintamaji arba XAUTHORITY.

Kaip pvz:

SUBSYSTEM=="input", ... , ENV{DISPLAY}=":0", ENV{XAUTHORITY}="/home/.../.Xauthority", RUN+="/.../synclient TouchpadOff=1"
TechtronicMindaugas N.
  • 20 Lap '15

Na kad turetum ka skaityti manualose tau dar geresnis budas (beveik parasiau viska uz tave):

Kadangi jau zinome kaip kurti udev rules, galima sukurti ir systemd unit

Rule tokiu atveju bus tokia:

SUBSYSTEM=="input", KERNEL=="mouse[0-9]*", ACTION=="add", TAG+="systemd", ENV{SYSTEMD_WANTS}="touchpad_disable.service"
SUBSYSTEM=="input", KERNEL=="mouse[0-9]*", ACTION=="remove", TAG+="systemd", ENV{SYSTEMD_WANTS}="touchpad_enable.service"

Unit atrodo taip:

[Unit]
Description=Disable touchpad

[Service]
Type=oneshot
Environment=DISPLAY=:0
Environment=XAUTHORITY=/home/.../.Xauthority
ExecStart=/usr/bin/xinput ...

Systemd units jau palaiko User/Group, bei DISPLAY kintamaji nustato automatiskai, bet tai priklauso nuo esamos systemd versijos...Skaityk dokumentacija, rasi budu kaip patobulinti visa sita veiksma.

EDIT: nezinau kokia situacija su Ubuntu + systemd, bet labai tikiuosi naudoja ta ka ir visos kitos distros.

  • 20 Lap '15

Esu dėkingas Techtronic už norą padėti, tačiau

Aš atsiprašau, turbūt turėjau rašyti į naujokų skiltį, nes tikrai nesu žinovas šitų dalykėlių, net su paprasčiausia matematika pykstuosi, because humanitaras chrienovas

Todėl, jei Techtronic tau būtų nesunku, ar negalėtum kaip nors nušviesti visų šitų programavimo subtilybių eigą step-by-step kaisaka...?

Instrukcija skaityt... kur?

TechtronicMindaugas N.
  • 20 Lap '15

Tai gana sudetinga nezinant kiek pas tamsta yra ziniu GNU/Linux. As tikrai nerasysiu step-by-step, bet jeigu nori ne tik isspresti savo problema bet ir kazka ismokti, tai stai nuo ko gali pradeti.

Jeigu dar nezinai, tai GNU/Linux kaip ir viskas yra failai:
https://www.youtube.com/watch?v=3P8n1uC0tyI
https://www.youtube.com/watch?v=3P8n1uC0tyI

Udev yra Linux device manager (atsako uz failus esancius /dev direktorijoje), jis inicializuoja kiekviena nauja irengini ir atlieka tam tikrus veiksmus. Tarkim pervadina network interface arba leidzia suzinoti tavo naudojamam DE (Desktop environment) kad esi pajunges nauja laikmena.

Systemd taip pat labai svarbus GNU/Linux elementas, jis atsako uz servisus, periodines uzduotis (cron), logus ar net autentifikacija.

Daug kam jis nepatiko ir sulauke kritikos, nes aka systemd "nesilaiko" Unix philosophy,
bet as manau kad mums senai reikejo tokio init. Jeigu jau bent kiek teko dometis, tai zinai jog Udev dabar yra systemd dalis, o ir kaip jau rasiau visos modernios GNU/Linux distros jau naudoja systemd . Seniau teko naudotis visokius HAL, devfsd ar forkus udev, rasyti daug random shell skriptu kurie veike tik ant vienos distros, o po atnaujinimo ar reboot kartais ir niekur neveike... Tai buvo problema, kuria ne karta buvo pakele tokie garsus vardai kaip Nvidia, nes jiems buvo sudetinga parasyti driveri ar servisa kuris veiks visur.

https://en.wikipedia.org/wiki/User_space
http://www.freedesktop.org/wiki/Software/systemd/

Jeigu nori atlikti koki veiksma tada kai pvz pajungi mouse, monitoriu ar webcam'a mes galime panaudoti udev "rules" kurias skaito udev is direktorijos /etc/udev/rules.d/* ir jos atrodo taip:

SUBSYSTEM=="net", ACTION=="add", ENV{ID_USB_DRIVER}=="cdc_ether", ENV{ID_MODEL}="N900__PC-Suite_Mode", ENV{ID_VENDOR}=="Nokia", NAME="n900" RUN+="/home/minde/bin/usb_network"

Apie formata siu ruliu suzinoti gali cia http://www.freedesktop.org/software/sys ... /udev.html

Kad aptikti savo irangini gali naudoti komanda:

udevadm monitor

Tokiu budu rasi ka panaudoti kuriant udev rules. Ties judant toliau, turi keleta pasirinkimu ka toliau daryti.

* Panaudoti RUN ir tokiu budu paleisti programa ar skripta kuris atliks reikalingus veiksmus.
* Naudoti systemd servisus tam kad aktyvuoti norima servisa kuris gali buti ir kitas device

Pirmu atveju gali paprasciausiai sukurti skripta bum.sh ir nurodes kur jis randasi udev rulei sutaupyti laiko nes jis tau ir atliks norimus veiksmus

#!/bin/bash
touch /tmp/ok

Antras budas sudetingesnis, o ir privers ismokti rasyti systemd unit failus, bet ateiti tokios zinios gali labai praversti.
Systemd units rasi /usr/lib/systemd/**, arba per user ~/.config/systemd/user/**.

Turbut pats paprasciausias atrodo taip:

[Unit]
Description=Servisas kuris padaro pasauli grazesni

[Service]
ExecStart=/usr/bin/skype --self-destruction

[Install]
WantedBy=multi-user.target

kuri uzvadinus skype.service galesi paleisti su komanda:

systemctl start skype

O nurodzius udev rulei tokiu bududu:

SUBSYSTEM=="net", ACTION=="add", ENV{ID_USB_DRIVER}=="cdc_ether", ENV{ID_MODEL}="N900__PC-Suite_Mode", TAG+="systemd", ENV{SYSTEMD_WANTS}="skype.service"

paleisi savo nauja servisa kuris paleis komanda "skype --self-destruction" kai Linux aptiks nauja irangini. Placiau apie servisu rasyma rasi cia http://www.freedesktop.org/software/sys ... .unit.html

Na dabar turi pakankamai informacijos kaip pasieti norima tiksla, tik ar noro yra dometis toliau ?

  • 6 Lie

Effects Of Alcohol On Amoxicillin ceadaDat [url=https://acialisd.com/#]Cialis[/url] sarkParl Levitra Generika Online Juibre <a href=https://acialisd.com/#>best place to buy cialis online</a> BodyType Usa Pharmacy

cheap prices on viagra

[url=https://viagraonline20up.com/]viagra a 75 anni[/url]
<a href="https://viagraonline20up.com/">ordre de pilules de viagra</a>

viagra prostat

achat viagra ligne franc

[url=https://viagraonline20up.com/]symptoms of viagra overdose[/url]
<a href="https://viagraonline20up.com/">generic viagra</a>

viagra 100mg 4 stuck

buy herbal viagra online uk

[url=https://viagraonline20up.com/]online viagra[/url]
<a href="https://viagraonline20up.com/">generic viagra</a>

uk buy viagra over counter

acheter viagra pas cher france

[url=https://viagraonline20up.com/]buy viagra via paysafe[/url]
<a href="https://viagraonline20up.com/">cheap viagra</a>

online tablets viagra

viagra itu apa

[url=https://viagraonline20up.com/]viagras sin receta blue 100 mg[/url]
<a href="https://viagraonline20up.com/">viagra generic</a>

good choice viagra in bulgaria

viagra krpergewicht

https://viagraonline20up.com/ - buy generic viagra
<a href="https://viagraonline20up.com/">cheaper alternative viagra</a>

viagra cause leg pain

buy cialis kamagra paypal

https://cialisgers1.com/ - cialis 5 indication
<a href="https://cialisgers1.com/">cheap cialis online</a>

cialis generico on line

cialis and high blood pressure

https://cialisgers1.com/ - cheap cialis online
<a href="https://cialisgers1.com/">cialis 5 posologia</a>

buy cialis los angeles

viagra svizzera ricett

https://viagraonline20up.com/ - viagra online legale
<a href="https://viagraonline20up.com/">viagra cheap</a>

pfizer generic viagra mexico

buy cialis online from vietnam

https://cialisgers1.com/ - look there what is cialis
<a href="https://cialisgers1.com/">generic cialis online</a>

generic cialis 5 mg

viagra order on line cheap

https://viagraonline20up.com/ - viagra pills pictures
<a href="https://viagraonline20up.com/">ebay viagra</a>

acquista viagra pfizer

Atsakyti