Portál AbcLinuxu, 19. dubna 2024 18:44

Mít vše hotovo s Tracks

22. 3. 2011 | Daniel Keder
Články - Mít vše hotovo s Tracks  

Ak ste sa už niekedy zamýšľali nad tým, ako zefektívniť svoje pracovné procesy, možno ste narazili na knihu Getting Things Done od Davida Allena (GTD, v českom vydaní "Mít vše hotovo"). V prípade, že ste ju i čítali, určite ste hľadali aplikáciu, ktorá by uľahčila evidenciu vašich projektov a úloh. Tento článok vám predstaví jednu z nich s názvom Tracks.

Obsah

Užívateľské rozhranie a vlastnosti

link

Filozofia aplikácie vychádza z GTD, takže spôsob práce s úlohami sa trochu líši od iných programov na evidenciu úloh a projektov. Ústredným pojmom v Tracks je úloha, pričom každá úloha musí mať pridelený nejaký kontext. Pod pojmom kontext je možné si predstaviť situáciu, v ktorej je úloha aktuálna. Napríklad pripomenutie úlohy "Kúpiť mlieko" je užitočné, keď sa človek prave chystá ísť do obchodu alebo je práve v obchode. Pokiaľ je úloha súčasťou nejakého väčšieho zámeru, môže byť priradená k projektu. Je možné vytvárať i opakujúce sa úlohy.

Užívateľské rozhranie Tracks je celkom intuitívne. V záhlaví obrazovky sú záložky vedúce na jednotlivé agendy aplikácie (úlohy, projekty, kontexty a pod.). Hlavná časť stránky obsahuje zoznam úloh, projektov a podobne, v závislosti na zvolenej agende. V pravej časti zvyčajne býva formulár na vytváranie nových položiek (úloh, projektov, kontextov).

Mít vše hotovo s Tracks Mít vše hotovo s Tracks Mít vše hotovo s Tracks Mít vše hotovo s Tracks Mít vše hotovo s Tracks

Úlohy, ktoré sú naplánované na dnes, sa zobrazujú v agende "Home". Úlohám je možné nastaviť dátum, dokedy musí byť splnená. Pokiaľ úloha zatiaľ nie je aktuálna, môžete ju i odsunúť na ďalšie dni. V tom prípade sa nebude zobrazovať na titulnej stránke, až kým nenastane jej čas. Odsunuté úlohy sú viditeľné v agende "Tickler". V agendách "Projects" a "Contexts" je možné vytvárať, upravovať a rušiť jednotlivé projekty a kontexty.

Tracks poskytuje i pokročilejšie funkcie, ako napríklad možnosť generovania štatistík plnenia úloh vo forme grafov, export databázy do CSV, YAML alebo XML súboru alebo sledovanie úloh pomocou RSS alebo iCal kanálov či vyhľadávanie.

Mít vše hotovo s Tracks Mít vše hotovo s Tracks

Aplikácii zameraných na evidenciu úloh a projektov existuje viac, Tracks je však:

Ak vás Tracks zaujal, bude vás zaujímať, ako ho nainštalovať.

Inštalácia a konfigurácia Tracks

link

Tracks je webová aplikácia napísaná vo frameworku Ruby On Rails. Z toho vyplýva, že existuje viacero možností, ako Tracks nainštalovať a prevádzkovať. Najjednoduchšia možnosť je spúšťať ho v jeho vlastnom aplikačnom serveri Mongrel, ktorý je dodávaný priamo s Tracks. Pokiaľ ale chcete použiť bežný webový server Apache alebo Lighttpd, neostane vám iná možnosť, než doň Tracks zaintegrovať.

Pre oba servery existuje modul Phusion Passenger (a.k.a. mod_rails), pomocou ktorého je možné Tracks (či ľubovoľnú inú aplikáciu písanú v Ruby on Rails) dostať do Apache alebo Lighttpd. Phusion Passenger funguje pomerne dobre, avšak jeho spolužitie so SELinuxom je pomerne komplikované. Preto v tomto článku popíšeme, ako Tracks nainštalovať do webového serveru Apache s použitím modulu mod_fcgi.

Inštrukcie uvedené ďalej v článku by mali fungovať vo Fedore 14, je ale samozrejme možné si ich prispôsobiť a použiť i v ľubovoľnej inej distribúcii podľa chuti každého admina.

Ako prvú vec treba nainštalovať Ruby a pár ďalších balíčkov:

$ yum install ruby ruby-devel ruby-rdoc rake rubygems \
rubygem-sqlite3-ruby rubygem-rake rubygem-rails

Kým sa balíčky inštalujú, stiahneme si z webu projektu (http://getontracks.org) zdrojový archív Tracks. V čase písania tohoto článku bola aktuálna verzia 1.7.2. Odvážni môžu namiesto oficiálneho vydania použiť git a stiahnuť si celý repozitár projektu i s najnovšími zmenami.

Ak máme archív stiahnutý, rozbalíme ho do nejakého vhodného adresára, v ktorom bude Tracks žiť, napríklad:

$ mkdir /home/www/tracks
$ cd /home/www/tracks
$ unzip 

Je dôležité nastaviť správne oprávnenia súborov tak, aby sa k nim neskôr dostal webový server. Ak Apache beží pod užívateľom a skupinou apache, privlastníme súbory príkazom:

$ chown -R apache:apache /home/www/tracks

Základ máme hotový, môžeme pristúpiť ku konfigurácii. V podadresári config sú súbory database.yml.tmpl a site.yml.tmpl. Oba premenujeme na varianty bez .tmpl:

$ cd /home/www/tracks
$ cp config/database.yml.tmpl config/database.yml
$ cp config/site.yml.tmpl config/site.yml

Súbor database.yml obsahuje nastavenia spojenia k databáze a site.yml obsahuje všeobecné nastavenia. My použijeme najjednoduchšiu variantu so sqlite3 databázou. Je možné použiť i "skutočnú" SQL databázu ako napríklad PostgreSQL či MySQL, ale ich konfigurácia je už mimo rozsah tohoto článku. Pokiaľ by ste ich chceli použiť, stačí sa riadiť komentármi v súbore. V prípade použitia sqlite3 stačí do hodnoty database uviesť cestu k databázovému súboru:

production:
  adapter: sqlite3
  database: /home/www/sqlite_db/tracks.sqlite

Voľby v súbore site.yml sú celkom dobre okomentované, takže ich nemá zmysel zbytočne popisovať. Snáď len upozorním, že príkaz subdir by mal obsahovať prefix URL, pod ktorým bude Tracks bežať. Teda v prípade, že tracks bude bežať ako http://localhost/tracks, musí byť v premennej subdir hodnota /tracks.

Po úpravách by súbor site.yml mohol vyzerať nejak takto:

salt: "deadbeef"
time_zone: "Prague"
secure_cookies: true
subdir: "/tracks"

V ďalšom kroku vytvoríme databázu. Do súboru, ktorý sme uviedli ako cestu k databáze, skopírujeme prázdnu databázu:

$ cp /home/www/tracks/db/tracks-17-blank.db /home/www/sqlite_db/tracks.sqlite
$ chown apache:apache /home/www/sqlite_db/tracks.sqlite

Teraz môžeme nainicializovať databázu. Presunieme sa do koreňového adresára Tracks (ak tam už náhodou nie sme) a spustíme:

$ cd /home/www/tracks
$ rake db:migrate RAILS_ENV=production

V tomto momente je konfigurácia Tracks hotová a malo by byť možné spustiť Tracks v serveri Mongrel. Server po spustení vypíše, na akej adrese a porte beží.

$ script/server -e production

V podstate by sme teraz mohli skončiť, pretože Tracks je už použiteľný, avšak náš konečný cieľ je...

Inštalácia Tracks do Apache

link

Dohodli sme sa, že k "zlepeniu" Apache a Tracks použijeme modul mod_fcgi. Najskôr ale musíme dostať Tracks do adresára, z ktorého má Apache povolené poskytovať súbory. Za predpokladu, že je to adresár /home/www/html a Apache má povolené sledovať symbolické odkazy, by malo stačiť vytvoriť symbolický odkaz:

$ cd /home/www/html/
$ ln -s /home/www/tracks/public public

Ďalej musíme nainštalovať mod_fcgi a podporu pre fcgi v Ruby.

$ yum install mod_fcgi fcgi fcgi-devel
$ gem install fcgi

Nakoniec na vhodné miesto v konfiguračnom súbore Apache doplníme:

DefaultInitEnv RAILS_ENV production

<Location /tracks>
    Order Deny,Allow
    Allow from all

    Options -MultiViews +ExecCGI +FollowSymLinks

    AddHandler fcgid-script .fcgi

    RewriteEngine On
    RewriteBase /tracks

    RewriteRule ^$ index.html [QSA]
    RewriteRule ^([^.]+)$ $1.html [QSA]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)$ dispatch.fcgi [QSA,L]
</Location>

Pravidlá pre mod_rewrite pochádzajú zo súboru .htaccess z adresára public v Tracks. Modul mod_fcgi má po inštalácii východziu konfiguráciu vo zvláštnom subore a netreba ju nijak zvlášť upravovať. Dôležité je len nastaviť premennú prostredia RAILS_ENV na hodnotu production. To hovorí, že Tracks má používať produkčnú databázu, ktorú sme uviedli v konfigurácii v súbore database.yml.

Tracks a SELinux

link

Ak máte zapnutý SELinux, pri použití mod_fcgi by malo stačiť nastaviť súborom v adresári Tracks typ httpd_sys_content_t:

$ semanage fcontext -a -s system_u -t htpd_sys_content_t '/home/www/tracks(/.*)?'
$ fixfiles relabel /home/www/tracks

Ak Apache konfigurujete po prvý krát, je možné, že Tracks stále nebude kvôli SELinuxu fungovať — v tom prípade sa treba pozrieť do audit logu SELinuxu a pomocou príkazu audit2why zistiť, v čom je problém. Častý problém napríklad je, že Apache má zakázané spúšťanie CGI skriptov. V tomto prípade stači povoliť boolean httpd_enable_cgi:

$ setsebool -P httpd_enable_cgi 1

Prvé spustenie

link

Ak teraz nasmerujeme webový prehliadač na správne URL, napríklad http://localhost/tracks, mal by sa zobraziť dialóg ponúkajúci vytvorenie užívateľského účtu. Po vytvorení účtu a prihlásení je možné s Tracks normálne pracovať.

Ak sa vám podarilo Tracks nainštalovať a vytvoriť si v ňom prvú úlohu, blahoželám. Ste na dobrej ceste, ako zvládnuť svoje úlohy a projekty s minimálnou námahou.

Pokiaľ prípadne poznáte či používate nejaký iný software založený na GTD, podeľte sa o skúsenosti s ním v diskusii pod článkom.

Další články z této rubriky

VDR a DVB-T2, část 2.
VDR a DVB-T2, část 1.
Šifrovaný Proxmox VE 6: ZFS, LUKS, systemd_boot a Dropbear
MapTiler – proměňte obrázek v zoomovatelnou mapu
Syncthing

Diskuse k tomuto článku

Milan Lajtoš avatar 22.3.2011 01:05 Milan Lajtoš | skóre: 22 | blog: /blog/babraq
Rozbalit Rozbalit vše Re: Mít vše hotovo s Tracks
Odpovědět | Sbalit | Link | Blokovat | Admin
Používal som pár mesiacov Getting Things Gnome, ktorý som si obľúbil aj napriek chýbajúcim vlastnostiam (napr. grupovanie úloh do projektov). Veľmi som si obľúbil tagy, ktoré zase chýbajú KOrganizeru (ktorý sa síce neriadi GTG, ale dá sa používať).

Tracks vyzerá byť výborná aplikácia, ktorá sa snaží dodržiavať metodológiu GTG čo najviac, ale nepáči sa mi, že to nie je desktopová aplikácia. Neviete o niečom podobnom, ale písané v niečom rozumnom?
“Every great achievement was once considered impossible.”
Shadow avatar 22.3.2011 08:24 Shadow | skóre: 25 | blog: Brainstorm
Rozbalit Rozbalit vše Re: Mít vše hotovo s Tracks
Ruby má "vestavěný" webserver (webrick), takže pokud vám stačí lokální běh, může být zprovoznění poměrně jednoduché (není nutné konfigurovat webserver), a až na to, že vám to pojede v prohlížeči, to bude desktopová aplikace. Jako DB můžete využít sqlite3, čímž se objedete bez instalace MySQL/Postgresu.
If we do not believe in freedom of speech for those we despise we do not believe in it at all.
22.3.2011 10:35 Václav Pávek | skóre: 12
Rozbalit Rozbalit vše Re: Mít vše hotovo s Tracks
Dobrý den,

docela by mě zajímalo jak to rozběhnout lokálně pomocí vestavěného serveru. Mohl by jste mě nasměrovat? Děkuji
22.3.2011 12:21 Stepan Vrany
Rozbalit Rozbalit vše Re: Mít vše hotovo s Tracks
Při instalaci Rails se pomocí závyslostí nainstaluje gem Webrick. Poté stačí spustit script/server ve vašem adresáři s aplikací. Krom webricku můžete použít i mongrel, thin...
Shadow avatar 22.3.2011 19:11 Shadow | skóre: 25 | blog: Brainstorm
Rozbalit Rozbalit vše Re: Mít vše hotovo s Tracks
Viz kolega výše. Já jen doplním, že existují i jednodušší cesty, třeba toto (nezkoušel jsem).
If we do not believe in freedom of speech for those we despise we do not believe in it at all.
22.3.2011 09:43 sudcadred
Rozbalit Rozbalit vše Re: Mít vše hotovo s Tracks
ja pouzivam ThinkingRock, starsiu verziu 2 ponukaju free, novsia verzia 3 je platena, je to multiplatformna aplikacia (Linux/win/mac) v ramci moznosti celkom pouzitelna:)
22.3.2011 17:15 User682 | skóre: 38 | blog: aqarium | Praha
Rozbalit Rozbalit vše Re: Mít vše hotovo s Tracks
zdravim,

take ThinkingRock pouzivam. Doslova tim ridim od zari praci na Linuxsoftu a rozdil je interne skutecne znat. Za pulrok jsem asi na 150 hotovych vecech/akcich.

Placena verze me zatim moc neoslovila. Nezda se mi, ze by toho nabizela moc navic.

Jinak aplikace je znacne stabilni. Funguje.

Co mi tak trochu chybi je, nejake lepsi cleneni/filtrovani, ze dana vec ceka nebo neceka na me. Nebo nejake grafy, jak prostupuje stavy v case dana zalezitost. Co by bylo zajimave take treba videt nejake nejcastejsi pruchody stavy v case. Ale to by asi chtelo jinou aplikaci. Zatim TR staci..

gf
Bilbo avatar 24.3.2011 21:49 Bilbo | skóre: 29
Rozbalit Rozbalit vše Re: Mít vše hotovo s Tracks
Koukám starší verze je opensource, u té novější když si to člověk koupí, dostane taky zdrojáky, nebo to uzavřeli komplet?

Je nějaký zajímavý rozdíl mezi verzemi 2 a 3?

Ale když vidím, že zdrojáky verze 2.2.1 mají 117MB tak to asi bude celkem moloch, možná zkusím spíš Tracks .....
Big brother is not watching you anymore. Big Brother is telling you how to live...
24.3.2011 11:15 polymorf | skóre: 14 | blog: tar_zxpf
Rozbalit Rozbalit vše Re: Mít vše hotovo s Tracks
GTG vyzera ok (az na miernu nestabilitu). Doma som si vsetko usporiadal do poduloh. Chcel som to iste spravit v praci ale tam som zistil ze mam cca 200 uloh a ani jedna nie je podulohou inej, a ani jedna nie blokovana ani neblokuje inu ulohu. Co v takom pripade radi GTD?
mkoubik avatar 22.3.2011 13:16 mkoubik | skóre: 5 | blog: lorem_ipsum | Praha 8 - Bohnice
Rozbalit Rozbalit vše Re: Mít vše hotovo s Tracks
Odpovědět | Sbalit | Link | Blokovat | Admin
Díky za článek. Asi půl roku patlám v railsech GTD aplikaci a právě teď jsem se na to vykašlal. Tracks vypadá přesně tak jak jsem si to představoval.
Plesk! | Population | Industry
22.3.2011 14:44 kralyk z abclinuxu | skóre: 29 | blog:
Rozbalit Rozbalit vše Re: Mít vše hotovo s Tracks
Odpovědět | Sbalit | Link | Blokovat | Admin
GTD je fajn. Já teda používám (snažím se používat) papírovou implementaci v malém zápisníku. Trochu středověké, ale funguje ;-)
What Big Oil knew about climate change
Josef Kufner avatar 22.3.2011 15:25 Josef Kufner | skóre: 70
Rozbalit Rozbalit vše Re: Mít vše hotovo s Tracks
Odpovědět | Sbalit | Link | Blokovat | Admin
Mám takový pocit, že v nadpisu článku chybí „– 1. díl“ ;-)

…už se těším na pokračování.
Hello world ! Segmentation fault (core dumped)
22.3.2011 17:06 th
Rozbalit Rozbalit vše gtd
Odpovědět | Sbalit | Link | Blokovat | Admin
Tracks 2.0RC2 + android shuffle 1.7.0b3 + GMail Widget Integration
22.3.2011 21:57 SPM | skóre: 28
Rozbalit Rozbalit vše Re: Mít vše hotovo s Tracks
Odpovědět | Sbalit | Link | Blokovat | Admin
Dá se ten český ebook koupit i v nějakém normálním formátu? 140,- bych klidně obětoval, ale číst to na počítači a ve virtuálu ve wydlích fakt nebudu :)
22.3.2011 23:03 ck
Rozbalit Rozbalit vše Re: Mít vše hotovo s Tracks
Odpovědět | Sbalit | Link | Blokovat | Admin
mate niekto skusenosti s inym web GTD? ak ano, tak aky, plusy, minusy... poznate nejaky web GTD v slovenskom alebo ceskom jazyuk?

dik

ck
23.3.2011 07:59 Juro
Rozbalit Rozbalit vše Re: Mít vše hotovo s Tracks
Odpovědět | Sbalit | Link | Blokovat | Admin
Osobne pouzivam toto: www.springpadit.com
Bedňa avatar 24.3.2011 12:39 Bedňa | skóre: 34 | blog: Žumpa | Horňany
Rozbalit Rozbalit vše Re: Mít vše hotovo s Tracks
Odpovědět | Sbalit | Link | Blokovat | Admin
Pýtam sa kamaráta: čo robí tvoj mladší brat. Odpoveď: On už nemusí robiť, on má všetko hotové :)
KERNEL ULTRAS video channel >>>
25.3.2011 00:20 mikky | skóre: 25 | blog: Ghlog | M. L. - Praha
Rozbalit Rozbalit vše Re: Mít vše hotovo s Tracks
Odpovědět | Sbalit | Link | Blokovat | Admin
podařilo se to někomu rozjet na Archu?
Je vám méně než 30 ? (jsme vrstevnící => budeme si tykat) : (jsem pro vás bažant => můžete mi tykat);
Shadow avatar 25.3.2011 09:24 Shadow | skóre: 25 | blog: Brainstorm
Rozbalit Rozbalit vše Re: Mít vše hotovo s Tracks
Verzi 1.7.3 se mi snad rozjet podařilo pomocí RVM, nainstaloval jsem ruby 1.8.7 a rails 2.3.11, a pak se to vzpamatovalo. Holt nové ruby z řady 1.9 to nemá rádo, taktéž rails 3. Postup klidně popíšu, pokud bude zájem.
If we do not believe in freedom of speech for those we despise we do not believe in it at all.
25.3.2011 14:04 MilanK
Rozbalit Rozbalit vše Re: Mít vše hotovo s Tracks
Je to boj. Nejdříve jsem se to pokoušel rozchodit na svém hostingovém webu, ale nezadařilo se nainstalovat gem pro mysql. (Výhodou je, že jsem pročetl pár wiki, takže už to není jen copy&paste.)

Na archu stačilo:

yaourt -S ruby1.8 rubygems1.8 pacgem

ten třetí balíček je něco jako yaourt a slouží pro vytváření balíčků pro archlinux pomocí gem install ... (výhodou je, že se používá archlinuxácký balíčkovací systém místo gem).

pak doinstalovat chybějící gems:

pacgem rake sqlite3

(ty balíčky se rovnou nainstalují - budou se jmenovat ruby1.8-rake, ruby1.8-sqlite3). Pozor na to, že binárky gems jsou v /opt/ruby1.8/bin - rake je třeba spouštět s plnou cestou nebo přidat do PATH.

Dále už podle článku. Snad jen, že "vestavěný" webový server není Mongrel, ale WEBrick, který dle archwiki není doporučován pro běžné používání: https://wiki.archlinux.org/index.php/RubyOnRails#Mongrel

Server se spustil, dál jsem zatím netestoval. (Chci to používat s Shuffle na Androidu - měl by podporovat synchronizaci do Tracks.)
25.3.2011 14:41 motyq
Rozbalit Rozbalit vše Re: Mít vše hotovo s Tracks
jj shuffle zrovna zkousim, sync s tracks umi (je v nastaveni, zatim jsem nezkousel). Me se povedlo uspesne rozjet tracks pomoci nginx + phusion passenger modulu na debian squeeze.

Krom toho ted muzu do sveho wwwroot pridat jakoukoliv ruby vec do dalsiho adresare a hned to funguje..

Postup jsem si psal, tak kdyz bude zajem tak ho sem pastnu
25.3.2011 18:05 MilanK
Rozbalit Rozbalit vše Re: Mít vše hotovo s Tracks
A ještě pár postřehů (archlinux):

Ruby1.8 má binárku /usr/bin/ruby1.8, takže ve skriptech je třeba používat tento odkaz, případně vytvořit symlink na /usr/bin/ruby.

V případě použítí WEBrick je nutné v tracks/config/site.yml nechat "subdir: "/cokoliv" zakomentované; jinak se web sice načte, ale bez formátování a obrázků.

Jinak se zdá, že synchronizace shuffle - tracks funguje i obousměrně, byť jsou problémy s omezením tracks (pouze datum), zatímco shuffle zvládne i čas. Při synchronizaci se čas nastaví na půlnoc. (Je zajímavé, že v preferences tracks lze nastavit časovou zónu, tak se s informací o čase snad počítá do budoucna.)

Další drobný problém je, že shuffle podporuje synchronizaci s google calendar - ovšem pouze při editování v shuffle, změny z tracks se do kalendáře nepromítnou.

Takže tracks bych zatím považoval vhodný jen jako "zálohu" dat z androidu.
31.3.2011 05:46 pakanek | skóre: 28 | Vyškov
Rozbalit Rozbalit vše Re: Mít vše hotovo s Tracks
Odpovědět | Sbalit | Link | Blokovat | Admin
Pouzivam Org mod pro Emacs.
Všechno dobré je pro něco zlé.
12.5.2011 12:26 Kamil
Rozbalit Rozbalit vše snadná instalace na desktop
Odpovědět | Sbalit | Link | Blokovat | Admin
Tracks je super, sám ho používám. Na desktop lze elegantně naisntalovat přes http://bitnami.org/stack/tracks. Návod je zde http://wiki.bitnami.org/Native_Installers_Quick_Start_Guide . Případně je možno se pouze zaregistrovat zde http://tracks.tra.in

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.