SGTimer

SGTimer je aplikace primárně určená pro vypínání a uspávání systému po nastavené době, přičemž časem nabrala další doplňkové funkce, které umožňují spouštět příkazy shellu, zobrazovat notifikace, nebo přehrát zvukový soubor. Nebo vše, a to v libovolném pořadí. Není problém nastavit si uspání systému za 120 minut, nebo třeba na pondělí 17:30, a nechat před tím spustit příkaz, který vám zazálohuje data, nebo ukončí proces, který z nějakého důvodu brání uspání systému (problém, který jsem tím kdysi řešil).



Instalace

sudo add-apt-repository ppa:georgdh/gdh
sudo apt-get update
sudo apt-get install sgtimer

 

Aktuálně


14.2.2021 - Verze 0.6.11 - Opravil jsem závislost na již nepodporované verzi knihovny libgstream a přidal do ppa balíky pro Ubuntu 18.04. a 20.04., další ještě dodělám. Funkčně se nic nezměnilo. Problém má ale SGTimer s některými funkcemi pod Waylandem, protože ten aplikaci neumožňuje například ovlivnit ani to, zda má být jeho okno "vždy navrchu", to je kompetence pouze správce oken. Také aplikace nelokalizuje polohu kurzoru na obrazovace, pouze nad vlastním oknem, nemůže si ani určit, kde se objeví její okno. Zkrátka Wayland od sebe okna jednotlivých procesů maximálně izoluje (bezpečnost), takže spouste užitečných interakcí mezi aplikacemi a jejich okny, se kterými jsem si tak rát hrál, jsou pod Waylandem pasé.

 

6.5.14 - Trochu jsem to popostrčil, i když ne moc, ale předvolby fungují, quicklist spouštěč také, indikátor indikuje a celé to tak nějak funguje. Novinka je v tom, že jsem to nacpal do ppa, takže bude jednodušší distribuce a mám zase nějakou motivaci se tím zabývat. Hlavní mouchy odstraním brzy, přidám i českou lokalizaci. Největším nepřítelem je momentálně Unity, ale to opravím. Instalace z ppa:

sudo add-apt-repository ppa:georgdh/gdh
sudo apt-get update
sudo apt-get install sgtimer


25.11.13 - Předchozí zmínku o přepisování v rámci Pythonu jsem ukončil a vrhl se pro změnu na přepisování do Vala. Na Sourceforge je rozpracovaný kód k dispozici, základ je plně funkční, časovač + rozšíření message, sound (které má nově vlastní přehrávač využívající GStreamer a umí přehrávat zvukovou stopu i z videosouborů) a command jsou k dispozici, momentálně pracuju na ukládání předvoleb a pak přijde na řadu modul procesů a oken pro rozšíření kill a modul čekání na ukončení procesu. Ve Vala mě to baví víc, navíc to žere třetinu paměti oproti Pythonu..

Neaktuálně ;)
Momentálně přepisuju SGTimer do trochu objektovější struktury, ale jelikož mám zas programovací útlum, stále jsem to nedokončil. Nějak mi chybí správná motivace, abych to dotáhl do nějaké finální verze....


1.7.12 - K dispozici betaverze SGTimeru 0.4.1.beta s řadou novinek. Odkaz vede na instalační deb, jinak je poslední verze v SVN. Ostrá verze s češtinou snad brzy... V nejnovějším Ubuntu je potřeba doinstalovat balík python-wnck (což si samozřejmě deb při instalaci zajistí sám).

Z novinek:
  • Režim Wait for Termination, tedy čekání na smrt - místo času si je možné vybrat procesy i jednotlivá okna, jejichž ukončení vyvolá zvolené akce.
  • Výběr procesů a oken jsem zpracoval do menu, které dělí procesy na které máte práva a na ty ostatní, další podmenu nabízí všechna otevřená okna, včetně těch skrytých. Každá položka v seznamu procesů má i tooltip, ve kterém je příkaz, kterým byl proces spuštěn a pokud je k němu dohledatelné okno, objeví se tam i ono. Vyhledávání postupným psaním prochází úplně všechny tyto údaje a menu se postupně, jak píšete, fitruje a dostanete jen odpovídající položky. Filtr současně filtruje procesy i okna. Výběr je možný i jen kliknutím do okna zvolené aplikace a to jak pro samostatná okna, tak pro proces, který okno provozuje.
  • Zjednodušení organizace skriptů a přidávání zvukových souborů
  • Ovládání pomocí klávesových zkratek
  • 5 Extra akcí (Audio, Zpráva, Zabití, Příkaz, Skript) se dá libovolně aktivovat a deaktivovat, čímž se v okně dynamicky objevují a zase mizí. Okno SGTimeru tak může být naprosto jednoduché bez rušivých nepotřebných rozšíření.
  • Akce Zpráva umí zobrazit zprávu krom okna i jako systémovou notifikaci
  • Widget má nové menu plné nastavení - barvy, průhlednost, font, tučné písmo, schovávání po najetí myši (v Compizu/Unity/KDE funguje pěkně, v GNOME Shell to má své mouchy v podobě problikávání widgetu při delším setrvání ukazatele myši nad ním)
  • Informační lišta s historií zobrazí i chybové hlášení spuštěného příkazu
  • Instantní akce - je možné z menu ikony v panelu, nebo widgetu okamžitě vypnout, odhlásit, uspat, ..
  • V nabídce předvoleb si mužete zaškrtnout, aby si SGTimer zapamatoval nastavení při ukončení. Při příštím startu bez definované předvolby se tak obnoví poslední stav.



-------------------------------------------------------------------------------------------------------------------------------------
Shutdown GTimer alias SGTimer

Vlastní tvorba. Univerzální časovač napsaný v Pythonu a GTK+, tedy PyGTK, který umožňuje za/v nastavenou dobu, krom vypnutí počítače, spustit defakto cokoliv. Třeba i jen zobrazit okno se zprávou, jak ilustruje následující obrázek:






Projekt byl umístěn na sourceforge.net:
http://sourceforge.net/projects/shutdown-gtimer/


Soubory ke stažení najdete zde:
http://sourceforge.net/projects/shutdown-gtimer/files/

Zásadní vlastnosti:
  • Rychlé ovládání myší i klávesnicí
  • Vypnutí, restart, uspání do RAM i na disk, odhlášení uživatele, spouštění shellových příkazů, nebo jen zobrazení okna se zprávou za určitý čas, nebo v určitý čas.
  • Pokud zadáte příkaz, provede se před zvolenou akcí, je tedy možné třeba  ukončit nějakou aplikaci před uspáním počítače, apod.
  • Časovač je maximálně na týden.
  • Při nastavování času pro odpočet, vidíte současně den v týdnu, hodinu a minutu, kdy odpočet skončí a lze je i přímo měnit
  • Uspat počítač v průběhu odpočtu není problém, musíte ho probudit před cílovým časem, nebo maximálně minutu po, aby se zvolená akce provedla
  • Veškerá nastavení časovače je možno ukádat do předvoleb a kteroukoliv předvolbu si můžete nastavit jako výchozí, která se bude spouštět po startu aplikace.
  • Předvolby se dají ukládat ve třech módech, co se času týká. Můžete uložit předvolbu pro trvání odpočtu, s cílovým časem nezávislým na dni, nebo s cílovým časem v určitém dni v týdnu.
  • SGTimer umí vytvořit spouštěč s quicklistem se všemi uloženými předvolbami - z mnoha doků, jako je třeba Unity Launcher, nebo Cairo Dock, pak lze spouštět SGTimer přímo s konkrétní předvolbou. Lze to i z příkazového řádku příkazem sgtimer "jméno_předvolby" 
  • Odpočet je možné zobrazovat v panelu Unity, nebo i v samostatném widgetu, který si můžete umístit kamkoliv na obrazovku a nastavit mu průhlednost
  • SGTimer není ani potřeba instalovat (i když deb balíčky pro Ubuntu jsou samozřejmě k dispozici), stačí stáhnout a rozbalit tar archiv a z adresáře shutdown-gtimer spustit soubor ./sgtimer, nebo v prostředí Unity ./launcher/sgtimer, aby se obešlo globální menu. Ikonu do hlavní nabídky aplikací si vytvoříte volbou v menu Nastavení > Spouštěč s quicklistem.

Základní nápověda je zabudována v tooltipech přímo v aplikaci, stačí nad jednotlivými částmi okna zastavit myš. Čas se, krom přímého zadání v minutách, nastavuje kolečkem myši, které přidává ubírá čas, který je zobrazen vedle vstupního pole. Krok se dá měnit najetím kurzoru myši nad jednotlivá tlačítka okna - 1 den, 1 hodina, 10 minut, 1 minuta, 1 sekunda, nebo i klikáním, či točením přímo nad indikátorem kroku. Místo kolečka lze použít klávesy PageUp/PageDown a krok přepínat Ctrl+A, Ctrl+S. Nově lze měnit jednotlivé části časových údajů otáčením kolečka přímo nad nimi.


Čísla verzí v changelogu níže odkazují vždy přímo na instalační deb. Aktuální vývojová verze je v svn.

Changelog:

0.3.8 26.12.11
  • kolečkem myši je možné měnit jednotlivé části časového údaje po najetí na ně. Točením nad minutami měníte minuty, nad dny dny, atd.
  • vstupní pole pro zadání minut dostalo nadstavbu se šipečkama pro změnu času klikáním
  • nové menu Nastavení, kde je možné nastavit chování aplikace. většina voleb se ukládá do předvoleb, můžete si tedy nastavit chování aplikace podle svých představ, které se s výchozí předvolbou načte hned po startu
  • do předvoleb se ukládá i zda je zobrazen widget s odpočtem a jeho pozice i průhlednost
  • je možné zakázat ikonu v panelu
  • je možné nechat zobrazovat odpočet i v záhlaví okna - v GNOME taskbaru je pak odpočet viditelný i když je okno minimalizováno
  • widget s odpočtem dostal menu na pravý klik
  • je možné zamknout nastavení času, i vstupní pole, pokud běží odpočet
  • při nahrání předvolby se její jméno zobrazí v záhlaví okna
  • předvolby je možné mazat po jejich aktivaci v menu klávesou Del a nastavovat jako výchozí klávesou Insert, nebo otočením kolečka myši. předchozí způsob s Shift a Ctrl zrušen
  • menu na pravý klik pro starší systémy s notifikační ikonu
  • opravena chyba, kdy po probuzení počítače déle než minutu po skončení běžícího odpočtu, tento pokračoval do mínusu
  • změněn název souboru s desktopovým spouštěčem kvůli zdvojování ikon v doku GNOME Shellu
  • v GNOME Shell je použita notifikační ikona místo indikátoru, zobrazuje tedy se nyní v notifikační oblasti normálně včetně kontextového menu
  • pro Ubuntu 10.10 obejita chyba v knihovně libappindicator, která způsobuje narůstání paměťových nároků aplikace, která častěji obnovuje menu indikátoru v panelu. v této verzi Ubuntu se tedy nezobrazuje odpočet v menu indikátoru (ikony v panelu), ale pouze status.
  • Výchozí krok pro změnu času otáčením kolečka myši nad polem pro zadání minut lze měnit klávesovými zkratkami Ctrl+A a Ctrl+S, nebo klikáním, či otáčením kolečka nad indikátorem kroku.

0.3.7  21.11.11
  • oprava spouštěče s quicklistem, který způsoboval, že se vytvářela další ikona v Launcheru, i jiných docích
  • přidání menu na pravé tlačítko u notifikační ikony v Ubuntu 10.04 a starších
  • proces aplikace se nyní jmenuje správně sgtimer, což především zjednodušuje jeho sledování v monitorech procesů. Funguje už i killall sgtimer.

0.3.6  17.11.11
  • Podpora quicklistů. Seznam předvoleb je přenesen i do quicklistu spouštěče, lze tedy, třeba z Unity Launcheru, SGTimer spouštět rovnou s danou předvolbou.
  • Po spuštění se vždy vytvoří spouštěč v domovském adresáři, který bude odkazovat na umístění tohoto konkrétního skriptu, ať už byl spuštěn odkudkoli. Tento spouštěč pak najdete v menu aplikací, i když spustíte SGTimer bez instalace.
  • Pokud je SGTimer spuštěn z jiného adresáře, než kde se nachází po standardní instalaci, bude hledat lokalizaci ve stejném adresáři, ze kterého byl spuštěn, budete mít tedy SGTimer v češtině, i když ho spustíte bez instalace, z rozbaleného taru.
  • Při spuštění akcí Vypnout a Restartovat, se kontroluje, zda nejsou přihlášeni další uživatelé a pokud ano, vyskočí okno s varováním, že se akce nemusí podařit, pokud nemáte práva pro ukončení sezení všech uživatelů. Což je standardní situace v Ubuntu - pro ukončení dalších uživatelů je požadováno heslo superuživatele.
  • Při snižování času s určitým krokem (kolečkem, klávesou Page Down), se automaticky zařadí krok nižší, pokud je zbývající čas kratší, než krok původní.
  • Snad už opravdu odstraněn problém, kdy okno zprávy někdy sebere fokus, ačkoliv mu to bylo zakázáno.
  • Úprava české a anglické lokalizace, slovenská nebyla od minulé verze aktualizována, protože mě to nebaví. V blogu a na ubuntu fóru je info pro dobrovolníky, když to někdo přeloží, tak to přibalím.
  • Při zadávání jména předvolby se nedají zapsat znaky ;[], které kolidují se strukturou konfiguračního souboru a spoštěče.
  • Klávesová zkratka pro změnu kroku, byla změněna na Ctrl+levý Shift z důvodu kolize s jeho použitím při psaní do textových polí.
  • Na víc už si momentálně nevzpomínám, když se tak stane, doplním..



0.3.5  30.6.11
  • Odděleny volby pro uložení předvoleb do samostatného menu Soubor/File
  • Možnost zobrazit po skončení odpočtu okno se zprávou při akci Příkaz/Command. Pokud je zadán text, okno bude zobrazeno, pokud pole zůstane prázdné, okno se zobrazovat nebude. Okno se zobrazuje uprostřed obrazovky, nebere focus a zavřít jde kliknutí kamkoli do něj, nebo klasickým způsobem.
  • Zprávy a příkazy mají historii posledních 15 použitých zadání
  • Zrušeno zaškrtávátko pro povolení provedení příkazu. Buď příkaz zadáte a ten se provede, nebo nezadáte a tudíž se nic provádět nebude.
  • Zadané texty pro zprávy i příkazy se dají jednoduše smazat kliknutím na uvozující nápisy (Zpráva:/Příkaz:).
  • Seznam spustitelných skriptů se dá přepnout místo historie příkazů klávesovou zkratkou Ctrl+L, nově je ale prohledáván adresář ~/.sgtimer/scripts/
  • Klávesová zkratka pro zobrazení zbývajícího času odpočtu v panelu byla změněna na Ctrl+P.
  •  V Unity je již standardní menu, které zůstává v okně aplikace.
  • Předvolby se v menu řdí podle abecedy, resp. podle pořadí znaků ve znakové sadě. Dříve se neřadily vůbec a přehazovaly se po každé změně - vlastnost použitého ConfigParseru..
  • Po spuštění aplikace se okno zobrazí lehce nad středem obrazovky, původně se zobrazilo vždy u kurzoru myši. Při zobrazení schovaného okna přes ikonu v panelu se dále zobrazuje u kurzoru myši.



0.3.4  14.6.11
  • slovenská lokalizace. stejně jako u češtiny je ale ještě potřeba přidat správné skloňování, které je tu ještě viditelnějším problémem.
  • časový údaj vlevo od zadávacího pole minut je možno myší přetáhnout kamkoli na obrazovku a měnit mu kolečkem myši průhlednost (průhlednost vyžduje kompozitního správce oken)
  • od Ubuntu 10.10 (pokud máte v panelu indicator applet), je možné zobrazit zbývající čas odpočtu i přímo v panelu, vedle ikony - aktivace/deaktivace z menu ikony, klávesou 'P', nebo od Ubuntu 11.04 i otočením kolečka myši od sebe nad ikonou.
  • od Ubuntu 11.04 otočení kolečka myši k sobě nad ikonou v panelu schová/zobrazí hlavní okno SGTimeru
  • kliknutí na tlačítko pro zavření aplikace v dekoraci okna pouze schová okno, které obnovíte přes ikonu v panelu. Zavřít aplikaci můžete tlačítkem Zavřít pokud je zastaven odpočet, nebo z menu ikony v panelu.
  
Poznámka: Den v týdnu je na obrázku nelokalizovaný z toho důvodu, že systém na kterém byl SGTimer spuštěn, nemá nainstalovanou slovenskou lokalizaci.

0.3.3  10.6.11
  • česká lokalizace

0.3.2  30.5.11
  • menu pro intuitivnější výběr výchozí akce
  • kontrola dostupnosti Suspend a Hibernate podle pm-is-supported
  • oprava funkčnosti ve starších systémech od Ubuntu 8.04
  • po odentrování příkazu v poli Command se aktivuje zadávací pole minut
  • kultivace kódu



0.3.1
  • odpočet využívá hodin reálného času proti času ukončení odpočtu
  • čas přepočtený z minut zobrazuje i počet dní 
  • možnost uložení výchozí akce která se provede při odentrování vstupního pole s minutami
  • přepínač umožňující nechat Shutdown GTimer po skončení odpočtu automaticky ukončit
  • krok kolečka myši při nastavování se mění i při najetí na tlačítka pod časovými údaji, můžete tak měnit krok 1den, 60 minut, 10 minut, 1 minuta, 1 sekunda, jednoduše posunutím kurzoru
  • podpora ukládání předvoleb
  • pokud SGTimer nenajde v systému potřebné služby, zneaktivní příslušné volby (tlačítka)
  • podpora Unity appindicatoru, zobrazí se tedy ikonka v systémové oblasti i v novém Ubuntu 11.04, ačkoli se chová trochu jinak, než ta klsická v oznamovací oblasti
  • čas je místo kolečka myši možno přizpůsobovat i klávesami Page Up/Page Down, krok se mění pravým Shiftem
0.2.1  19.4.11
  • opravena chyba, kdy při kliknutí levým tlačítkem myši na ikonu v panelu při neaktivním okně aplikace, se okno často přesune tak, že zůstane částí mimo obrazovku a pod panelem 
  • zmenšeny popisky časových údajů pro lepší přehlednost
  • zmenšení minimální velikosti okna, vypadá to lépe :)
 Shutdown GTimer 0.2.1



0.2.0  17.4.11
  • přidány funkce Rastart a LogOut (služba SessionManager)
  • možnost spouštění externích programů, skriptů a shellových příkazů
  • combobox nabízející spustitelné soubory z ~/.sgtimer 
  • zobrazení času odpočtu ve formátu hodiny, minuty, sekundy
  • zobrazení času s dnem v týdnu kdy odpočet skončí
  • kliknutí levým tlačítkem na ikonu v panelu se již chová logičtěji
0.1.2 11.11.10
  • přidán přepínač umožňující zamknout obrazovku při uspání počítače
  • není již potřeba Hal, přibyla podpora UPower, DeviceKit, ConsoleKit


Příspěvky v blogu k tomuto tématu:
Další update uspávače pecí
Shutdown GTimer 0.3.x
Shutdown GTmer 0.2.0 - evoluce uspávače pecí
Shutdown/Suspend/Hibernate po nastavené době - tentokrát klikací


Žádné komentáře:

Okomentovat

Zkuste prosím při komentováni používat místo volby Anonymní volbu Název/adresa URL, kde vyplníte nějakou přezdívku, adresu zadávat nemusíte. Vědět, které příspěvky jsou od jednoho člověka, je fajn. Díky.

Pokud by se vám náhodou odeslaný komentář na stránce nezobrazil, vytáhnu ho z koše hned jak si toho všimnu. I Google spam filter se občas sekne.