přejít na obsah přejít na navigaci

Linux E X P R E S, WinStrom: Účetnictví pro Linux

WinStrom: Účetnictví pro Linux

winstrom.jpg

Účetnictví na Linuxu je dlouhodobý problém trápící nejednoho podnikatele, který by rád celou svoji agendu na Linux převedl. Mezi rozsáhlejšími ekonomickými systémy je podpora Linuxu docela rozšířená, ale s nabídkou programů, pod kterými si většina lidí účetní software představí, to je mnohem horší. Je tu ale řešení – účetní software WinStrom.


V roce 2003 se společnosti SuSE ČR a X-tronic rozhodly něco s absencí českého účetního software dělat. Výsledkem bylo účetnictví Honeycalc. Bohužel představy lidí nikdy nenaplnil. Problém byl především v tom, že byl primárně vyvíjen pro interní potřeby a prodej dalším subjektům byl pouze vedlejším produktem. Nikdy se tak nevyvinul v účetní program, který by byl plně konkurenceschopný a pro zákazníky atraktivní.

Další pokus přišel v roce 2006 a na svědomí ho měl Liberix a společnost Softapp. Projekt se jmenoval (a stále jmenuje) LinKonto, ale ani on se příliš neujal. Důvodů bylo několik: jednalo se o původně DOSovskou aplikaci a tedy nenabízela zrovna moderní a atraktivní rozhraní, navíc to nebyla aplikace nativní, ale potřebovala ke svému běhu emulátor DOSu, instalace také nebyla na té úrovni, aby ji zvládla kdejaká účetní.

Třetí světlo ve tmě linuxového účetnictví rozžala na podzim minulého roku společnost WinStrom, s.r.o., která představila účetní software WinStrom 10. Když k tomu za pár měsíců přibyla podpora daňové evidence, která pro Linux nikdy nebyla, něco dávalo tušit, že by se nemuselo jednat o planý pokus.

WinStrom 10WinStrom 10

Společnost WinStrom, s.r.o. vznikla na počátku minulého roku jako dceřiná společnost společností WIN-STROM SOTFWARE, s.r.o., která má mnohaleté zkušenosti s vývojem a podporou účetního softwaru, a SoftEU, která se zabývá vývojem zakázkových informačních systémů na platformě JavaEE.

WinStrom 10 je účetním softwarem nové generace, nenavazuje totiž na svého předchůdce WinStrom 7, ale je napsán kompletně znovu na platformě JavaEE, což mu umožňuje být multiplatformním produktem, který funguje ve Windows stejně jako v MacOS X a Linuxu. Svým určením pokrývá ekonomické subjekty od živnostníků, vedoucích daňovou evidenci, až po středně velké firmy, které vedou účetnictví (dříve s přívlastkem podvojné). Podporuje také účetnictví příspěvkových organizací.

WinStrom 10 má komerční licenci, to znamená, že jeho distribuce není zcela volná a musíte za něj zaplatit. Existuje však výjimka, stejně jako konkurence, i WinStrom nabízí startovní verzi zdarma. Na rozdíl od většiny tvůrců účetního softwaru však nabízí v bezplatné verzi Start všechny funkce. Naskýtá tak ideální způsob, jak si WinStrom kompletně vyzkoušet. Omezen je počet záznamů (40 u neregistrované verze, 100 u registrované), firem, uživatelů a současně připojených uživatelů. Lidem, kteří vystaví pár faktur za rok, může dlouhodobě sloužit i tato verze.

Jako placené jsou nabízeny verze Mini, Basic, Standard a Business, které se liší omezeními a počty modulů a jejich cena se pohybuje od 2390 do 22900 Kč bez DPH za první licenci, další licence jsou zhruba o polovinu levnější. Podrobné srovnání všech variant naleznete na stránkách produktu.

Kde jinde jsou pravidelné a garantované aktualizace důležitější než u účetního softwaru? Držet krok se změnami v zákonech a předpisech je nezbytné pro každého, kdo účetnictví nebo daňovou evidenci vede. Proto je důležité nehodnotit účetní software jen podle toho, kolik stojí a co nabízí po nákupu, ale jaká je podpora a aktualizace v dalších letech a kolik to všechno stojí.

Aktualizace a podpora jsou nabízeny v rámci služby Záruka, která je první rok zdarma a v dalších letech stojí 4500 Kč (pro varianty Mini a Basic 3100, respektive 1200 Kč). Kromě toho společnost WinStrom nabízí i další servis. Zhruba jednou měsíčně se konají bezplatné prezentace produktu, možné jsou placené školení, a to buď přímo ve firmě, nebo v prostoru společnosti WinStrom. V portfoliu služeb jsou také placené servisní zásahy, a to buď přímo na místě, nebo opět u prodejce.

Podpora je poskytována třemi formami: e-mailem, po telefonu nebo přes webový formulář. Ze zkušeností mých, ale i ostatních, musím konstatovat, že reakce zaměstnanců WinStromu jsou opravdu rychlé. Nahlásil jsem přes webové rozhraní jednu chybu a ač jsem byl pouze registrovaný uživatel verze Start, tedy bez nároku na jakoukoliv podporu, dostalo se mi odpovědi do pěti minut a problém začali řešit. Reakce do pěti minut byla asi do značné míry náhoda než nějaké pravidlo, ale z reakcí ostatních lidí, se kterými jsem se na toto téma bavil, vyplývá, že WinStrom reaguje opravdu pružně.

Instalace

Na stránkách WinStromu naleznete instalační soubory pro všechny tři platformy - Windows, Mac OS X a Linux. K dispozici jsou tři balíčky, které jsou určeny pro šest oficiálně podporovaných distribucí - Ubuntu, Debian, Fedoru, openSUSE, Red Hat a Mandriva Linux. Ale fungují také na jiných distribucích, např. na CentOS nebo PCLinuxOS. Při potížích doporučuji nahlédnout do pěkně zpracované online příručky.

Instalace je jednoduchá a přímočará. Stažený balíček stačí spustit a zahájí se instalační proces. Hned na začátku jste dotázáni, zda chcete provést lokální, nebo síťovou instalaci. Lokální znamená, že budete celé účetnictví provozovat na jednom počítači. Pokud zvolíte síťovou, budete dotázáni, zda instalovat klienta, nebo server. Mezi závislosti balíčku WinStromu patří běhové prostředí Sun Java 6 a PostgreSQL (8.3 a novější), které je využíváno pro databázi. Pokud tedy tyto balíčky nemáte, stáhnou se a nainstalují společně s WinStromem. Věcí, která mě příjemně překvapila, je to, že WinStrom při instalaci přidá své repozitáře do zdrojů softwaru. Aniž by se tedy musel uživatel o cokoliv starat, WinStrom se automaticky aktualizuje přes centrální správu softwaru v distribuci. Bez nadsázky se dá říct, že instalaci a správu aplikace zvládne i paní účetní.

První spuštění

Po instalaci naleznete WinStrom v nabídce aplikací, v mém případě to je pod Aplikace | Kancelář. Po prvním startu se objeví dialog První spuštění, pomocí kterého vytvoříte prvního uživatele, ten poté slouží jako administrátor. V dalším dialogu máte možnost založit firmu nebo ji obnovit ze zálohy. Pokud si chcete WinStrom vyzkoušet, můžete si nechat vytvořit testovací firmu, která je již naplněná daty. Před vytvořením nové firmy jste dotázání na to, zda chcete vést účetnictví, daňovou evidenci, nebo účetnictví příspěvkových organizaci. WinStrom také podporuje účetnictví (pouze podvojné) podle slovenské legislativy.

Přecházíte-li z jiného účetního programu, jediným způsobem, jak přenést data do WinStromu, je export dat do tabulek ve formátu XLS a jejich následný import do WinStromu.

Dialog pro volbu firmyDialog pro volbu firmy

Provoz

Při zkušebním provozu jsem si nejdříve všímal technických věcí. Jak už jsem psal v části o instalaci, WinStrom lze provozovat buď kompletně na jednom počítači, nebo síťově, kdy je databáze umístěná na serveru a jednotliví klienti k ní přistupují po síti. Dá se tedy říci, že WinStrom zvládá jak monolitickou architekturu, kdy je veškerá funkcionalita umístěná na jednom počítači, tak dvouvrstvou architekturu, kdy je uživatelské rozhraní a aplikační logika na klientském počítači a databáze na serveru. K obojímu přitom stačí jeden instalační balíček a zprovoznění síťové varianty není nijak zvlášť obtížné.

Java, v níž je WinStrom napsán, sice umožňuje pohodlný multiplatformní vývoj, ale má i svá negativa. Jedním z nich je větší spotřeba paměti. Při běžném provozu se spotřeba paměti celého účetnictví včetně databáze šplhala na mém stroji s 3 GB paměti přes 400 MB. To není málo. Na druhou stranu v době, kdy se i netbooky osazují minimálně 1 GB už to není podstatné. Zvažovat byste to měli pouze v případě, kdy chcete WinStrom nasazovat na starší počítač.

Programy napsané v Javě také mívají problémy s rychlostí překreslování grafického rozhraní. Na svém rok starém notebooku jsem s tím neměl problém, leč účetní, která rychle provádí rutinní operace, jde i o desetiny sekundy (ne nadarmo jsou mezi nimi pořád populární dosovská účetnictví, která jsou v rychlosti nepřekonatelná). Proto WinStrom na svých stránkách nabízí návod, jak výchozí GTK vzhled změnit na jiný, údajně rychlejší.

Já jsem však v souvislosti se vzhledem narazil na jinou věc. Na Ubuntu 9.04 u některých alternativních vzhledů, jako je např. New Wave, měl WinStrom problémy s tím, aby se písmo na výšku vešlo do textových polí a bloky dialogů do vymezených rámečků. Nutno ale říci, že jak v Ubuntu, tak v Mandriva Linuxu, na kterých jsem WinStrom testoval, bylo u výchozích vzhledů vše v pořádku. Pokud tedy používáte vzhled, se kterým si WinStrom moc nerozumí, řešením je vzhled nezávislý na systému (viz výše).

WinStrom může mít u některých témat vzhledů problémy s velikostí prvků.WinStrom může mít u některých témat vzhledů problémy s velikostí prvků.

Co se týče ekonomických záležitostí, tedy toho, k čemu je WinStrom, určen jedná se o účetní software typu Pohoda nebo Money S3. WinStrom není podnikovým informačním systémem, neobsahuje žádné funkce řízení nebo podporu podnikových procesů. Není ani analytickým nástrojem nebo nástrojem pro podporu plánování, tyto funkce v něm také nenaleznete. I když se dá předpokládat, že by mohly v budoucnu přibýt. WinStrom 7, starší a nemultiplatformní účetnictví, které WinStrom 10 zatím funkčně dotahuje, má modul analýzy nákupu a prodeje.

Podnikové účetnictví WinStrom pokrývá velmi dobře. Obsahuje všechny obvyklé agendy (fakturace, sklady, ceník, adresář, majetek, peníze, objednávky atd.), pouze modul Mzdy je nutné u dvou nejlevnějších variant dokoupit. Mezi prvními obsahuje podporu nového standardizovaného formátu elektronických faktur - ISDOC. Doteď se faktury vyměňovaly převážně v PDF, což byla sice dobrá náhrada za papírovou fakturu, ale nic víc. Formát ISDOC lépe využívá výhody elektronické komunikace, umožňuje automaticky importovat fakturu a data na ní uvedená do účetního systému. ISDOC také usnadňuje elektronické podepisování faktur a následné ověření pravosti. Jelikož ale bude trvat ještě hodně dlouho, než začnou tento formát používat všechny účetní jednotky, zachovává si WinStrom podporu také faktur v PDF.

Pro práci s penězi slouží moduly Pokladna a Banka. WinStrom umožňuje nastavit různé primární měny a k nim měnu duální, do které pevným kurzem operace přepočítávají. Pokladna i banka umí účtovat s valutami a devizami. Modul Homebanking umožňuje automatizovanou komunikaci s bankou. Umí importovat bankovní výpisy v nejpoužívanějších formátech a naopak exportovat příkazy k úhradě, které se předají bance.

WinStrom umí také vytvářet výstupy pro přiznání daně. V případě daňové evidence je to výkaz daňové evidence a podklady k DPH. U účetnictví je výběr širší, v nabídce jsou kromě DPH rozvaha, hlavní kniha, výkaz zisků a ztrát atd.

V účetnictví lze také nalézt základy analytické evidence. Veškeré účetní záznamy lze přiřadit příslušnému středisku, zakázce nebo, jak je dnes populární, opatřit štítkem, což mi přijde jako zajímavý nápad. Velmi se mi líbí také dobře zpracované vazby mezi doklady a jejich jednoduché zobrazení. Pokud si vyberete např. přijatou fakturu, můžete si velmi rychle nechat zobrazit všechny dokumenty, které s ní souvisí, tedy příjemku, doklad o platbě faktury nebo objednávku.

Zobrazení navázaných dokumentů považuji za praktickou vlastnost.Zobrazení navázaných dokumentů považuji za praktickou vlastnost.

Předností WinStrom, která je často prezentována, je podpora cizích jazyků. Program v současné době podporuje češtinu, slovenštinu a angličtinu, na spadnutí je údajně i podpora němčiny. Nejedná se však o úpravu podle legislativy jednotlivých zemí, ale pouze o lokalizaci programu do daného jazyku. Hodí se to v případech, kdy má společnost např. majitele nebo management z řad cizích státních příslušníků a ti chtějí účetnictví firmy rozumět. WinStrom také podporuje názvy položek ve skladu a majetku ve více jazycích. V příslušném dialogu jen stačí kliknout na tlačítko „plus" a rozbalí se pole pro názvy v dalších jazycích.

Vícejazyčné pojmenování položky ve skladu.Vícejazyčné pojmenování položky ve skladu.

Co považuji za největší nevýhodu WinStromu, je absence rozhraní pro komunikaci s dalšími systémy. Celá řada firem dnes provozuje internetové obchody nebo objednávkové a platební systémy, automatická výměna dat mezi těmito systémy a jejich účetním softwarem je pro ně prakticky nutností. Toto zatím neumožňuje, údajně se ale chystá podpora XML importu a exportu.

Vyplnil WinStrom mezeru?

Na začátku jsem si kladl otázku, zda je WinStrom opravdu tím programem, který dokáže na Linuxu vyplnit mezeru, která tam v oblasti účetnictví a daňové evidence pro živnostníky a menší společnosti byla. Po seznámení s tímto programem říkám, že ano. WinStrom 10 možná ještě není tak robustní co do funkcionality, především ta komunikace s ostatními systémy mu citelně chybí, ale je to dle mého názoru dobře navržený účetní software s příjemným a jednoduchým uživatelským rozhraním a zajímavými vlastnostmi, který se navíc dynamicky rozvíjí.

Nahoru

Odkazy

Příspěvky

tpelc Vzhled
tpelc 22. 06. 2009, 06:09:54
Odpovědět  Odkaz 
Jsem štastným majitelem tohoto účetnictví a kudy chodím, tudy chválím. Jenom ten vzhled (zakrývání částí textu/číslic) ve formulářích je trochu pihou na kráse. Bohužel v článku uvedený odkaz na řešení je nefunkční - Stránka nenalezena.
Re:Vzhled
Petr Ferschmann 22. 06. 2009, 07:46:41
Odpovědět  Odkaz 
Správný odkaz je:

http://www.winstrom.cz/podpora/reseni/winstrom-je-pomaly/
Vlastimil Ott Re:Re:Vzhled
Vlastimil Ott 22. 06. 2009, 11:49:45
Odpovědět  Odkaz 
Opraveno, díky
je to jen pro singleuser
a 22. 06. 2009, 13:25:19
Odpovědět  Odkaz 
Zbezne jsem si to prohledl a maji tam havo races. Takze kdyz s tim bude pracovat vice nez jeden user soucasne tak se tam budou ztracet polozky, pokud se uzivatele trefi do stejneho time window.

Autorum bych doporucoval prostudovat si jak funguji MVCC databaze.
Re:je to jen pro singleuser
Petr Ferschmann 22. 06. 2009, 16:11:21
Odpovědět  Odkaz 
Důkladně jsem to prostudoval a žádné "havo races" tam nejsou :-). Dokonce tam nejsou ani problémy se souběhem více operací.

Autoři ví jak fungují MVCC databáze a WinStrom je v síťových a víceuživatelských instalacích reálně používán.

Pro neznalé - více informací lze nalézt http://www.root.cz/clanky/transakce-a-izolace-transakci-v-databazich/

Ono ani nejde tolik o MVCC jako obecně o jakýkoliv sdílený prostředek. Abychom nemuseli zamykat záznamy (Marta šla na oběd a už má čtyři hodiny otevřené výplaty a nikdo jiný tam nemůže) používá se "optimistické" zamykání. Tj. pokud dva uživatelé změní jeden záznam, dojde k chybě a uživatel, který změnu uložil jako poslední je na tento fakt upozorněn společně s nabídnutím seznamu změněných položek a musí změnu provést znovu (tj. vyhraje ten první).

Toto nastává jen v případě, že záznam měníte. Při vkládání nového záznamu ke kolizi dojít nemůže a rozhodně se data po uložení nemohou ztratit.

Čas poslední změny je určován s přesností na mikrosekundy (tj. jedna miliontina sekundy). Ano v případě, že dva uživatelé změní jeden záznam ve stejné mikrosekundě, může dojít k tomu, že uživatel nebude na kolizi upozorněn a vyhraje ten poslední.
Re:Re:je to jen pro singleuser
Petr Ferschmann 22. 06. 2009, 18:00:58
Odpovědět  Odkaz 
Tak musím sám sebe opravit: samozřejmě, že problém nenastane ani když provedou dvě aplikace změnu v jedné mikrosekundě. Podívejme se na problém více do hloubky.

Aplikace 1 načte data, že došlo ke změně v čase T1.
Aplikace 2 načte data, že došlo ke změně v čase T1.

Aplikace 1 provede změnu:
update zaznam set a = 'neco', posledni_zmena = now() where id = 1 and posledni_zmena = T1;

Aplikace 2 provede změnu ve stejné mikrosekundě:
update zaznam set a = 'neco jineho', posledni_zmena = now() where id = 1 and posledni_zmena = T1;

Protože u prvního záznamu dojde ke změně data poslední změny, podmínka where u druhého dotazu selže a nezmění žádný záznam a uživatel je o tomto stavu informován.

Dokážu zmást i sám sebe :-)
Re:Re:Re:je to jen pro singleuser
antaran 22. 06. 2009, 19:50:54
Odpovědět  Odkaz 
...asi nepouzivate Hibernate/JPA, ten podporuje optimistic locking with versioning (optimisticke uzamykanie s verziami)...

nieje potrebne pouzivat ako verziu timestamp, zbytocne to zavadza...staci obycajne cislo...

select * from zaznam where id = 1;
(vrati zaznam: id=1, a='', verzia=1)

update zaznam set a = 'neco', verzia = verzia + 1 where id = 1 and verzia = 1;
(updatne 1 riadok, vrati 1, ok neni co riesit)

update zaznam set a = 'neco jineho', verzia = verzia + 1 where id = 1 and verzia = 1;
(updatne 0 riadkov, vrati 0, pretoze verzia je uz 2, treba riesit konflikt)


...inak tu zadarmo verziu by som mozno aj vyskusal, ale chybaju mi tam mzdy, aspon 12 :)
Re:Re:Re:Re:je to jen pro singleuser
Petr Ferschmann 22. 06. 2009, 21:26:53
Odpovědět  Odkaz 
Ano používáme Hibernate. A používáme datum poslední změny proto, že to má stejnou funkčnost a navíc to nese informaci poslední změny.

Případně doporučuji přečíst si náš vývojařský blog: http://blog.softeu.cz/winstrom-10-pod-poklickou/
Re:Re:Re:Re:Re:je to jen pro singleuser
antaran 22. 06. 2009, 23:07:25
Odpovědět  Odkaz 
RE: ...proto, že to má stejnou funkčnost...

podla toho prikladu, co je vyssie, iba v pripade, ze tie SQL prikazy niesu urobene v priebehu 1 ms, pretoze ak su, tak potom T1 = now() a v tom pripade pri prvom update v podstate nezmenis verziu...

...ak nezmenis verziu pri kazdom update, tak verzovanie nieje spolahlive a pri najhorsom sa moze stat, ze nastane "posledny vyhrava" pripad...

...ak neveris tak si rozpis na papier do tabulky 3 updaty v tom istom case, ja si netrufam, lebo je uz 23:00 a chce sa mi strasne spat... :)


RE: http://blog.softeu.cz/winstrom-10-pod-poklickou/

pekne :)
zacinam tiez: http://antaran13.blogspot.com/
Re:Re:Re:Re:Re:Re:je to jen pro singleuser
Petr Ferschmann 23. 06. 2009, 08:26:25
Odpovědět  Odkaz 
Právě, že není problém ani při časové značce. I když se dva updaty sejdou ve stejné ms, tak je vše v pořádku, protože se odkazují na hodnotu z doby, kdy záznam přečetli. Jediná možnost by byla, že by přečtení záznamu a jeho změna byla v jedné mikrosekundě u obou modifikujících operací. Nicméně ani dva po sobě jdoucí SQL dotazy nejsou takto rychlé.

U uložené procedury to nastat může a musíte si zde na to dát pozor.
Re:Re:Re:Re:Re:Re:Re:je to jen pro singleuser
antaran 23. 06. 2009, 09:12:53
Odpovědět  Odkaz 
...problem v casovej znacke podla mna je...skutocne odporucam napisat si tabulku na papier a odskusat si aspon 3 updaty v tej istej milisekunde a zistite, ze vyhra posledny...pretoze verzia sa nezmeni...

...spoliehat sa na to, ze medzi 2 ma riadkami kodu, ktore mozu bezat paralelne sa zmeni timestamp, je vseobecne zly napad...aj ked to na 99,99% bude fungovat...

...hibernate a vsetky JPA kompatibilne persistance providery by toto vsetko pekne ohandlovali za vas, stacilo by dat do kazdej verzovanej entity jeden stlpec naviac a anotovat ho. A hibernate uz updaty generuje s kontrolou verzie a v pripade ze nic neupdatne vyhodi vynimku, ze nastal konflikt, ktoru si mozete osetrit ako chcete...
Re:Re:Re:Re:Re:Re:Re:Re:je to jen pro singleuser
antaran 23. 06. 2009, 09:23:18
Odpovědět  Odkaz 
opravujem, ked som napisal 3 updaty, myslel som 3 selecty a potom update-y...
Re:Re:je to jen pro singleuser
a 23. 06. 2009, 00:43:16
Odpovědět  Odkaz 
http://www.root.cz/clanky/transakce-a-izolace-transakci-v-databazich/

V tom clanku je v tom prikladu s race condition chyba. Nejlepsi zamykani z dostupnych DB ma ibm DB2 (predicate locking) a ani ta vas 'automaticky' neochrani jak se autor mylne domniva. Ja bych proto doporucoval studovat kvalitni literaturu a ne nejake blogy.

ad optimistic locking. Nejlepsi je pouzivat kombinaci ROWID (abychom radku nasli bez pristupu do indexu ktery muze byt zamceny jinou transakci) a nejakeho pocitadla, pripadne casovou znacku, ale pocitadlo je jak zde uz nekdo poznamenal lepsi. Pokud se o pocitadlo pro update/insert nestara databaze interne, tak je potreba pouzit pro jeho generaci alespon triger.

nicmene ja jsem mel na mysli jiny typ races a to jak mate napsane stored procedury.

Pro zacatek bych doporucoval se zamerit na zamykani v Oracle. Neni problem k teto DB sehnat kvalitni vyukove materialy a zamykaci model Oraclu je velice jednoduchy. Az pochopite to zamykani v Oracle, tak pak muzete studovat pokrocilejsi zamykaci pripadne lock avoidance techniky jako jsou treba predicate locking, cursor stability nebo MVCC.

Zalezi jen na vas jaky pristup zvolite.
WinStrom: Účetnictví pro Linux
CIJOML 22. 06. 2009, 20:19:56
Odpovědět  Odkaz 
Je tam funkce pro automaticke vydani faktury nejakemu subjektu s danym casovym urcenim? (treba mesicni platba internetu etc.)

Přidat názor

Nejsou podporovány žádné značky, komentáře jsou jen čistě textové. Více o diskuzích a pravidlech najdete v nápovědě.
Diskuzi můžete sledovat pomocí RSS kanálu rss



 
 

Top články z OpenOffice.cz

Jiří Eischmann

Jiří Eischmann

(*1984) studoval na VŠE a Memorial University of Newfoundland. Je členem GNOME Foundation. Podílel se na knihách o Mandriva Linuxu a Ubuntu a momentálně pracuje ve společnosti Red Hat jako manažer zodpovědný za vývoj desktopových aplikací a je Fedora ambasadorem pro ČR. Ve volném čase se věnuje sportu a cestování.


  • Distribuce: Fedora
  • Grafické prostředí: GNOME

| proč linux | blog