abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 00:55 | Pozvánky

    Spolek OpenAlt zve příznivce otevřených řešení a přístupu na 209. brněnský sraz, který proběhne tento pátek 16. května od 18:00 ve studentském klubu U Kachničky na Fakultě informačních technologií Vysokého učení technického na adrese Božetěchova 2/1. Jelikož se Brno stalo jedním z hlavních míst, kde se vyvíjí open source knihovna OpenSSL, tentokrát se OpenAlt komunita potká s komunitou OpenSSL. V rámci srazu Anton Arapov z OpenSSL

    … více »
    Ladislav Hagara | Komentářů: 0
    dnes 00:22 | Komunita

    GNOME Foundation má nového výkonného ředitele. Po deseti měsících skončil dočasný výkonný ředitel Richard Littauer. Vedení nadace převzal Steven Deobald.

    Ladislav Hagara | Komentářů: 0
    10.5. 15:00 | Zajímavý článek

    Byl publikován přehled vývoje renderovacího jádra webového prohlížeče Servo (Wikipedie) za uplynulé dva měsíce. Servo zvládne už i Gmail. Zakázány jsou příspěvky generované pomocí AI.

    Ladislav Hagara | Komentářů: 7
    9.5. 17:22 | Nová verze

    Raspberry Pi Connect, tj. oficiální služba Raspberry Pi pro vzdálený přístup k jednodeskovým počítačům Raspberry Pi z webového prohlížeče, byla vydána v nové verzi 2.5. Nejedná se už o beta verzi.

    Ladislav Hagara | Komentářů: 3
    9.5. 15:22 | Komunita

    Google zveřejnil seznam 1272 projektů (vývojářů) od 185 organizací přijatých do letošního, již jednadvacátého, Google Summer of Code. Plánovaným vylepšením v grafických a multimediálních aplikacích se věnuje článek na Libre Arts.

    Ladislav Hagara | Komentářů: 0
    8.5. 19:22 | Nová verze

    Byla vydána (𝕏) dubnová aktualizace aneb nová verze 1.100 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.100 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

    Ladislav Hagara | Komentářů: 0
    8.5. 18:00 | Nová verze

    Open source platforma Home Assistant (Demo, GitHub, Wikipedie) pro monitorování a řízení inteligentní domácnosti byla vydána v nové verzi 2025.5.

    Ladislav Hagara | Komentářů: 0
    8.5. 01:22 | Nová verze Ladislav Hagara | Komentářů: 0
    8.5. 00:55 | Zajímavý projekt

    PyXL je koncept procesora, ktorý dokáže priamo spúštat Python kód bez nutnosti prekladu ci Micropythonu. Podľa testov autora je pri 100 MHz približne 30x rýchlejší pri riadeni GPIO nez Micropython na Pyboard taktovanej na 168 MHz.

    vlk | Komentářů: 0
    7.5. 19:44 | Nová verze

    Grafana (Wikipedie), tj. open source nástroj pro vizualizaci různých metrik a s ní související dotazování, upozorňování a lepší porozumění, byla vydána ve verzi 12.0. Přehled novinek v aktualizované dokumentaci.

    Ladislav Hagara | Komentářů: 0
    Jaký filesystém primárně používáte?
     (57%)
     (1%)
     (8%)
     (22%)
     (4%)
     (2%)
     (3%)
     (1%)
     (1%)
     (3%)
    Celkem 583 hlasů
     Komentářů: 26, poslední 8.5. 09:58
    Rozcestník

    Dotaz: vlastni acpi script

    7.8.2012 09:07 martin
    vlastni acpi script
    Přečteno: 343×
    ahoj, konečně jsem se dokopal k tomu že si pořádně ošetřím ovládání notasu
    ale nejak se mi to zaseklo na získávání dat parsovaním výpisu.
    Tady je kus kodu. Čísla kláves a selektování sedí.Ty jsem získal pomocí
    "acpi_listen".Jen nějak nechápu proč je proměnná TOUCHPAD pořád prázdná.
    Žádný záznam v logu pořád jen
    Aug  7 08:21:44 1201N martin: Touchpad is:
    Aug  7 08:21:44 1201N martin: Error in parsing synclient!!!
    
    #!/bin/sh
    case "$1" in
        hotkey)
            case "$3" in
                00000037)
                    TOUCHPAD=`synclient -l | grep TouchpadOff | awk '{print $3}'`
                    logger "Touchpad: $TOUCHPAD"
                    case "$TOUCHPAD" in
                        0)
                             echo 0 > /sys/class/leds/eeepc::touchpad/brightness
                             synclient TouchpadOff=1
                             unclutter -idle 2 -root &
                             notify-send "Touchpad is OFF"
                             ;;
                        1)
                             echo 1 > /sys/class/leds/eeepc::touchpad/brightness
                             synclient TouchpadOff=0
                             pkill unclutter
                             notify-send "Touchpad is ON"
                             ;;
                        *)
                             logger "Error in parsing synclient !!!"
                             ;;
                    esac
                    ;;
                  *)
                    logger "Unknown Media Key: $1 / $2 / $3"
                    ;;
    ..... atd, atd
    

    Přitom když přepíšu jen to parsování do test souboru

    #!/bin/sh
    TOUCHPAD=`synclient -l | grep TouchpadOff | awk '{print $3}'`
    echo $TOUCHPAD
    

    nastavím mu +x a vyzkouším tak jede normálně.
    Je to můj první bash script tak pomalu na mě, studoval jsem bash asi 5min :)
    Dík za pomoc.

    Odpovědi

    7.8.2012 09:25 Patrik Uhrak | skóre: 31 | blog: pato
    Rozbalit Rozbalit vše Re: vlastni acpi script

    Bolo by vhodne sem dat cely skript, tak ako je a nie len cast.

    7.8.2012 13:45 martin
    Rozbalit Rozbalit vše Re: vlastni acpi script
    Příloha:
    Ok,
    No problemo. Všechno funguje až na parsování touchpad statusu.
    10.8.2012 07:58 Patrik Uhrak | skóre: 31 | blog: pato
    Rozbalit Rozbalit vše Re: vlastni acpi script

    Ono to funguje, len si tam spravil chybu. Odkazujes na 3. (slovom treti) argument namiesto 2 v sekcii pre hotkey. :)

    
    #!/bin/sh
    # Default acpi script that takes an entry for all actions
    
    minspeed=`cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_min_freq`
    maxspeed=`cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq`
    setspeed="/sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed"
    
    set $*
    
    case "$1" in
        hotkey)
            # povodny zapis 
            # case "$3" in
            case "$2" in
                00000037)
                    TOUCHPAD=`synclient -l | grep TouchpadOff | awk '{print $3}'`
                    logger "Touchpad is: $TOUCHPAD"
                    case "$TOUCHPAD" in
                            0)
                                    echo 0 > /sys/class/leds/eeepc::touchpad/brightness
                                    synclient TouchpadOff=1
                                    unclutter -idle 2 -root &
                                    logger "Touchpad si ON"
                                    ;;
                            1)
                                    echo 1 > /sys/class/leds/eeepc::touchpad/brightness
                                    synclient TouchpadOff=0
                                    pkill unclutter
                                    logger "Touchpad is OFF"
                                    ;;
                            *)
                                    logger "Error in parsing synclient!!!"
                                    ;;
                    esac
                    ;;
                *)
                    logger "Unknown mediakey $1 / $2 / $3 / $4"
                    ;;
            esac
            ;;
        button/mute)
            case "$2" in
                MUTE)
                    logger "Mute button pressed: $2"
                    amixer set Master toggle
                    ;;
                *)
                    logger "ACPI action undefined: $2"
                    ;;
            esac
            ;;
        button/volumedown)
            case "$2" in
                VOLDN)
                    amixer set Master 2dB- unmute
                    ;;
                *)
                    logger "ACPI error volumedown"
                    ;;
            esac
            ;;
        button/volumeup)
            case "$2" in
                VOLUP)
                    amixer set Master 2dB+ unmute
                    ;;
                *)
                    logger "ACPI Error volumeup"
                    ;;
            esac
            ;;
        button/power)
            case "$2" in
                PBTN|PWRF)
                    logger "PowerButton pressed: $2"
                    poweroff
                    ;;
                *)
                    logger "ACPI action undefined: $2"
                    ;;
            esac
            ;;
        button/sleep)
            case "$2" in
                SLPB|SBTN)
                    echo -n mem >/sys/power/state
                    ;;
                *)
                    logger "ACPI action undefined: $2"
                    ;;
            esac
            ;;
        ac_adapter)
            case "$2" in
                AC|ACAD|ADP0)
                    case "$4" in
                        00000000)
                            echo -n $minspeed >$setspeed
                            #/etc/laptop-mode/laptop-mode start
                            ;;
                        00000001)
                            echo -n $maxspeed >$setspeed
                            #/etc/laptop-mode/laptop-mode stop
                            ;;
                    esac
                    ;;
                *)
                    logger "ACPI action undefined: $2"
                    ;;
            esac
            ;;
        battery)
            case "$2" in
                BAT0)
                    case "$4" in
                        00000000)
                            logger 'Battery online'
                            ;;
                        00000001)
                            logger 'Battery offline'
                            ;;
                    esac
                    ;;
                CPU0)
                    ;;
                *)  logger "ACPI action undefined: $2" ;;
            esac
            ;;
        button/lid)
            case "$3" in
                close)
                    logger 'LID closed'
                    ;;
                open)
                    logger 'LID opened'
                    ;;
                *)
                    logger "ACPI action undefined: $3"
                    ;;
        esac
        ;;
        *)
            logger "ACPI group/action undefined: $1 / $2 / $3 / $4"
            ;;
    esac
    
    # vim:set ts=4 sw=4 ft=sh et:
    
    10.8.2012 09:06 Patrik Uhrak | skóre: 31 | blog: pato
    Rozbalit Rozbalit vše Re: vlastni acpi script

    A mozno je to sprostost, co som napisal. Ale podstata je, ze by bolo viac nez vhodne skontrolovat, ake argumenty sa pouzivaju. Daj si tam kontrolne body, napr. echo $3 pred case a tak podobne, pripadne echo $@ alebo najlepsie obe.

    10.8.2012 12:41 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: vlastni acpi script
    Zkuste třeba přidat řádky:
    synclient -l | grep TouchpadOff > /nekam/kde/lze/zapisovat/ttest1 2> /nekam/kde/lze/zapisovat/ttest1_err
    synclient -l > /nekam/kde/lze/zapisovat/ttest2 2> /nekam/kde/lze/zapisovat/ttest2_err
    
    před TOUCHPAD=`synclient -l … a stisknout a juknout do těch souborů.
    A ještě bych si před tím case vypsal parametry, klidně třeba
    echo "Vstupní parametry '$1'  '$2'  '$3'" > /nekam/kde/lze/zapisovat/ttest0
    Samozřejmně můžete všechno do jednoho souboru pomocí >> to už je na Vás.
    PS: TouchpadOff může nabývat tří hodnot 0,1,2
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    11.8.2012 15:11 martin
    Rozbalit Rozbalit vše Re: vlastni acpi script
    Jak jsem psal.
    Problem neni s podminkami, tam je vse ok. hodnoty mi odchytava spravne.
    o tom svedci i rozsvecovani led diody pro touchpad.
    problem je v tom ze se mi proste ten prikaz `synclient` ani nevykona :(.
    zrovna tak hlaska v notifikatoru se nikdy nezobrazi.
    11.8.2012 16:13 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: vlastni acpi script
    Zkuste napsat celou cestu, např. /usr/bin/synclient, a vemte v potaz že ten acpi skript se pouští pod rootem.
    11.8.2012 16:23 martin
    Rozbalit Rozbalit vše Re: vlastni acpi script
    Díky,
    To jsem zkoušel taky a nic.
    Ted jsem vsak znovu asi objevil kolo.
    Skript uz bezi v plne parade a jeste jsem par veci dopsal.

    Stacilo na zacatek skriptu dopsat:
    export XAUTHORITY=/home/martin/.Xauthority
    export DISPLAY=":0"
    

    a uz to beha jak ma.ten DISPLAY bych pochopil ale XAUTHORITY ???
    dokaze mi to nekdo objasnit kdyz musi vedet ze bezi pod rootem.
    Dik.
    11.8.2012 16:35 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: vlastni acpi script
    No a to byste se právě dozvěděl v těch dvou souborech ttest1_err a ttest2_err,
    asi by tam bylo něco jako: Failed to connect to X Server.
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    11.8.2012 18:47 martin
    Rozbalit Rozbalit vše Re: vlastni acpi script
    Ano bylo tam presne ono v test2_err.
    exportoval jsem DISPLAY ale stale nic.chybelo tomu XAUTHORITY.
    a to me mate.
    proste by me zajimalo na co root potrebuje prava k pristupu na muj Xserver.
    Nikdy jsem toto neresil :( ale alespon jsem ted o neco chytrejsi.
    11.8.2012 19:11 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: vlastni acpi script
    Vysvětlení bude asi nějak takto (¡jen úvaha!): synclient nastavuje touchpad pro X-ka a musí komunikovat z Xserverem a musí vědět komu to nastavuje, tedy i kterou xseesion, a v .xauthority je uložena cookie, přes kterou se synclient autorizuje vůči Xserveru a tím vlastně komunikuje pod rolí určenou v .xauthority a tím pádem nastaví touchpad pro vaši session.
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    11.8.2012 19:28 martin
    Rozbalit Rozbalit vše Re: vlastni acpi script
    Krásné a 'polopatické' vysvětlení.
    Tím se i vysvětluje proč všechno ostatní fungovalo.
    Díky.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.