Atvirasis kodas tinklaraščiuose

February 4 d.

opensuse.lt

Kingsoft WPS Office

Kingsoft įmonė siūlo nemokamai naudotis Linux sistemoms skirtu WPS Office 10 raštinės programų paketu (kol kas tik alfa 20 versija). Išvaizda, o ir galimybės, ypač primena Microsoft Office raštinės paketo siūlomą. Be to, išvaizdą galite pasirinkti: arba tokia, kaip įprasta naujausiose Microsoft Office versijose, arba kaip keliolikos metų senumo Microsoft Office versijose. Gerai palaiko Microsoft Office dokumentų formatus, tačiau (bent kol kas) visai nepalaiko OpenOffice/LibreOffice dokumentų. Programa į lietuvių kalbą nėra išversta. WPS Office parsiuntimo Linux sistemoms puslapyje rinkitės RPM paketus priklausomai nuo to, kokią versiją įsidiegėte (*.x86_64.rpm – 64 bitų, *.i686.rpm – 32 bitų sistemoms).

by openSUSE lietuviškai (opensuse.lietuviu.kalba@gmail.com) at 2016 m. February 4 d. 13:29

February 1 d.

Atviro kodo mokymo centras

Linux Lite 2.8 išleista


Linux Lite 2.8 – Ubuntu 14.04 LTS pagrindo distribucija su XFCE aplinka. Naujame leidime rasime naują branduolį, BTRFS palaikymą, žinyno nuorodą darbastalyje, Hulu palaikymą, klaidų ištaisymus ir kitą.

 


 

Naujovės trumpai:

  • Bazė: Ubuntu 14.04.3.

  • Programinė įranga: Firefox 44, Thunderbird 38.5.1, LibreOffice 5.0.4.

  • Nauji darbastalio fonai.

  • Linux 3.19.

  • Žinynas pasiekiamas per darbastalį.

  • Pridėtas BTRFS palaikymas.

  • Pridėtas VLC HEVC H.265 palaikymas.

  • Pridėtas xbacklight.

  • Nauji failų naršyklės Thunar plėtiniai.

  • Hulu palaikymas.

  • Klavišai Ctrl+Shift+Esc atveria užduočių tvarkyklę.

  • Pataisytas įskiepis Blueman.

Tai yra paskutinis leidimas, naudojantis Ubuntu 14.04 bazę. Atsiuntimo nuorodas ir išsamesnę informaciją rasite šaltinyje.

by Sigitas Kalinas at 2016 m. February 1 d. 12:11

January 23 d.

opensuse.lt

Ką daryti, kad KDE Plasma 5.5 veiktų sklandžiai atnaujinus KDE Frameworks iki 5.18

Atnaujinus KDE Frameworks nuo 5.17 iki 5.18 versijos, KDE Plasma 5.5 aplinkos apvalkalas gali dažniau persikrauti, tačiau tai nekliudo toliau dirbti atvertuose programų languose. Norėdami, kad darbas KDE Plasma 5.5 aplinkoje su KDE Frameworks 5.18 vyktų sklandžiai, eikite per meniu K > Nuostatos (ar Parinktys) > Sistemos nuostatos > (Darbo erdvės grupėje) > Darbalaukio elgsena ir nuimti varnelę nuo „Rodyti informacinius patarimus“.

by openSUSE lietuviškai (opensuse.lietuviu.kalba@gmail.com) at 2016 m. January 23 d. 8:37

January 19 d.

Remigijus Jarmalavičius

GIT Hook'o paleidimas pasikeitus failams

Anksčiau rašiau kaip su GIT PUSH komanda atnaujinti projektus ir serveryje įvykdyti automatinius veiksmus. Dažniausiai tai:

  • python, php ar kitokio programinio kodo atnaujinimas;
  • duomenų bazės migracijos;
  • media ir kitų statinių failų atnaujinimai;
  • duomenų valymo operacijos (sesijų, kešo);
  • trečios šalies programinės įrangos konfigūracijos (pvz. apache/nginx perkrovimas).

Produkcinėje sistemoje norėsis ne tik „atominių“ operacijų (čia pagelbės tik nebent load balancer'ų panaudojimas), bet ir kuo optimaliau atlikti šias operacijas. Nes laikas ypatingai brangus dalykas, tuo labiau produkcinėje sistemoje.

Vienas iš patarimų kaip daryti tokius deployment'us greičiau - vykdyti komandas tik kai tam tikri failai buvo keisti. Pavyzdžiui nenaujinti duomenų bazės, jeigu tarp pakeistų failų nėra migracijų katalogo redagavimų.

O padaryti tokį tikrinimą nėra sunku su post-rewrite hook'u kurį aprašytume .git/hooks/post-rewrite faile:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
#!/bin/bash

changedfiles=( $(git diff --name-only HEAD@{1} HEAD) )

if [[ "${changedfiles[*]}" =~ "bower.json" ]]; then
    bower install && bower update
fi

if [[ "${changedfiles[*]}" =~ "package.json" ]]; then
    npm install
fi

if [[ "${changedfiles[*]}" =~ "migrations/" ]]; then
    python manage.py migrate
fi

if [[ "${changedfiles[*]}" =~ "migrations/" ]]; then
    php vendors/phpmigrations/manage.py migrate
fi

Ir jeigu esate pastabus programuotojas, žinosite, kad reikia suteikti šiam failui vykdymo teises su chmod +x .git/hooks/post-rewrite.

Trumpi paaiškinimai. Kintamąjam changedfiles priskiriame masyvą pakeistų failų (dėl to ir yra skliaustai apie komandą git diff --name-only HEAD@{1} HEAD). Vėliau if sąlygomis tikriniame ar jis turi bent vieną elementą kuris gali atitikti užklausą (operatorius =~). Ir jeigu atitinka - vykdome komandas. Aukščiau pateikiau ne vieną variantą kuris gali praversi JavaScript, PHP ar kitų kalbų programuotojiems. Žinoma, nenaudokite to vien tik migracijoms - panaudokite ir kitoms operacijoms.

Šis post-rewrite hook'as vykdomas kai vyksta istorijos redagavimas. Jis pasivykdys „commit“ žinutės keitimo (git commit --amend) ar istorijos medžio lipdymo/konstravimo metu (git rebase).

Jums gali praversti angliškas hook'ų aprašymas GIT dokumentacijoje.

by Remigijus Jarmalavičius at 2016 m. January 19 d. 10:00

January 12 d.

Remigijus Jarmalavičius

Logcheck ignoruojamų taisyklių tikrinimas

Neįsivaizduoju serverio kuriame neveiktų logcheck. Kas dar neturėjo progos patyrinėti šios programinės įrangos - pasakysiu, kad tai tiesiog paprasta programėlė kuri pasirūpina, kad būtumėte informuotas kai klaidų žurnalas pasipildo.

Kaip ir WEB programuotojui taip ir serverių administratoriui, kuris nori žinoti kas vyksta serveriuose, logcheck yra tikras išsigelbėjimas. Tik įdiegus (užteks paprasto apt-get install logcheck) reikės susikonfigūruoti apie ką norėsite būti informuotas. Faile /etc/logcheck/logcheck.conf rasite ne tik konfigūracijos nustatymus, bet ir jų aprašymus komentaruose. Todėl atskirai jų nenagrinėsiu.

Logcheck konfigūracijų rekomendacijos

Mano pirma rekomendacija būtų nusistatyti paranoid pranešimų lygį. Žymiai geriau gauti labai daug žinučių ir atsifiltruoti ko nereikia, negu kažką pražiopsoti. Tą padarysime konfigūracijų failą nustatę:

REPORTLEVEL="paranoid"

Ir būtinai įsirašykite savo el. pašto adresą kur norėsite gauti pranešimus:

SENDMAILTO="sysadmin@example.org"

Visa kita, ne tiek ir svarbu. Kada pranešimus gausite galite pasitkrinti cron faile /etc/cron.d/logcheck (greičiausiai pagal nutylėjimą tai bus kas valandą).

Žinučių ignoravimas su logcheck

Susikurkite nuosavą failą kataloge /etc/logcheck/ignore.d.paranoid ir jame aprašykite ignoravimo taisykles.

Štai kaip atrodytų tipinis, tingių PHP programuotojų, ignoravimo failas /etc/logcheck/ignore.d.paranoid/php-errors:

^.*Client sent malformed Host header
^.*Directory index forbidden by Options directive: .*
^.*Invalid Content-Length.*
^.*Invalid URI in request POST TP.*
^.*Invalid URI in request.*

Kaip matome - regexp. Tiesa, nebūtinai. Galite tiesiog dalį teksto įrašyti - taip pat suveiks.

Logcheck ignoravimo komandų testavimas

O kaip pasitestuoti logcheck išvestį po ignoravimo komandų jeigu ten aprašėte labai sudėtingą regexp'ą? Su kita komanda!

cat /var/log/apache2/error.log | egrep -v -f /etc/logcheck/ignore.d.paranoid/php-errors

Ir gausime tokias žinutes kurios yra /var/log/apache2/error.log faile, tačiau nesutampa su faile /etc/logcheck/ignore.d.paranoid/php-errors aprašytomis išraiškomis. Priešingą paiešką mums duoda egrep -v komanda.

Logcheck praktinis panaudojimas

Man, kaip Python ir PHP programuotojui, yra svarbu žinoti kas vyksta ne tik pačiuose serveriuose kuriuos turiu, bet ir sukurtoje programinėje įrangoje. Tokios žinutės iš sisteminių failų dažnai yra pravertusios sutvarkyti ne vieną rimtą bėdą, kol ji netapo rimtesnė.

Pavyzdžiui programuojant PHP drąsiai galiu rašyti visokias loginimo sąlygas su paprastu error_log() ir tikrai žinau, kad logcheck pasirūpins, jog nepraleisčiau tokių žinučių.

Programuojant Python greičiausiai jau teks konfigūruoti logging paketą. Žinutes nureipti į atskirą klaidų žurnalo failą ir logcheck pasakyti, kad jis iš jų skaitytų.

Kalbant apie gerąsias praktikas, siūlau nenustatinėti logcheck laiškų siuntimo „realiu laiku“ (tarkime kas dvi minutes), nes galite gauti labai daug spam'o į savo pašto dėžutę.

by Remigijus Jarmalavičius at 2016 m. January 12 d. 16:00

January 10 d.

opensuse.lt

openSUSE 13.1 laidai pratęsiamas palaikymas

2013 metų lapkritį pasirodžiusios openSUSE 13.1 laidos pagrindinis planuotas palaikymas baigiasi šiomis dienomis, tačiau norintieji likti su šia sistema gali būti ramūs: Evergreen (liet. amžinai žalias, gyvuojantis) projektas rūpinsis openSUSE 13.1 saugumo atnaujinimais dar maždaug vienerius metus laiko. Kitaip nei ankstesnių pratęsto palaikymo versijų atveju, jums nereikia pridėti jokių papildomų saugyklų: atnaujinimai keliaus į įprastą 13.1 atnaujinimų saugyklą. Tokiu principu jau anksčiau savo sistemos palaikymą gavo openSUSE 11.1, openSUSE 11.2 (iš viso 4 metus!) ir openSUSE 11.4 (beveik pusketvirtų metų!).

by openSUSE lietuviškai (opensuse.lietuviu.kalba@gmail.com) at 2016 m. January 10 d. 15:51

January 9 d.

opensuse.lt

Akonadi pokyčiai su KDE Frameworks 5


::jseblod::article::/jseblod::
::panel_article:: ::/panel_article::
::wysiwyg_introtext::

Akonadi sistema – serveris ir klientai – skirta talpinti, indeksuoti ir nuskaityti asmeninę informaciją. Akonadi nuo KDE 4 laikų naudojama KDE asmeninės informacijos tvarkytuvėje (angl. Personal Information Manager, PIM) Kontact (apima el. pašto programą KMail, KOrganizer kalendorių, KAddressBook...), naujienų kanalų skaitymo programoje Akregator, kai kuriuose KDE Plasma valdikliuose (angl. widget), pavyzdžiui, darbalaukio užrašų lapeliuose, kalendorinių įvykių pateikimui ir netgi KDE 4 alternatyviame Lancelot programų paleidiklyje.

Akonadi susilaukdavo ir tebesusilaukia priekaištų dėl lėtumo ir didelio RAM kiekio eikvojimo. Pavyzdžiui, netgi šviežiai įdiegtoje sistemoje su KDE Plasma 5.5 aplinka pareikalauja apie 200 MiB RAM, o vėliau pilnėjant duombazei kiekis nemažėja...

2015 m. rugpjūtį išleista Akonadi versija KDE Frameworks 5 ir Qt 5 pagrindu, tačiau ligi šiol (2015 m. sausio) neturi stabilios API. Nuo KDE 4 laikų iki 2016 m. pirmųjų dienų Akonadi sulaukė pakeitimų:

  • Akonadi klientai su serveriu bendrauja ne tekstiniu protokolu, o dvejetainiu; tai leidžia gerokai sutaupyti laiko, nes nebereikia užklausų perkoduoti į tekstinį pavidalą, o po to vėl koduoti į dvejetainį.
  • Akonadi serveris apie pokyčius klientams praneša nebe per DBus, o dvejetainiu protokolu.
  • Akonadi serveris nebeturi viešojo API; Akonadi serveris pasiekiamas tik per KDE Akonadi klientų bibliotekas.
  • Sugrįžta KJots pastabų programėlė.

Daugiau informacijos Danielio Vratilio tinklaraštyje (anglų k.). Apie Akonadi minima taip pat ir Keno Vermeto naujoje KDE Plasma 5.5 apžvalgoje (anglų k.).

 

::/wysiwyg_introtext::
::wysiwyg_fulltext:: ::/wysiwyg_fulltext::
::panel_article_details:: ::/panel_article_details::
::panel_article_params:: ::/panel_article_params::
::panel_article_meta:: ::/panel_article_meta::
::panel_end:: ::/panel_end::
::jseblodend::::/jseblodend::

by openSUSE lietuviškai (opensuse.lietuviu.kalba@gmail.com) at 2016 m. January 9 d. 0:00

January 5 d.

Remigijus Jarmalavičius

Kaip terminale dirbti su CSV failais

Labai mėgstu CSV failo formatą kai kalba eina apie išvestį terminale. Jis patogus skaitymui, jį lengvai supranta GUI programos, o ir didelį failą atsidaryti - jokia bėda. Aišku, kalbame apie darbą su duomenimis terminale.

Pirmiausiai tai trumpai kas yra CSV failo formatas, jeigu yra dar nežinančių apie ką eina kalba:

  • tai paprastas tekstinis failo formatas tekstiniams duomenims laikyti;
  • pirmoje failo eilutėje gali būti (gali ir nebūti) išvardinti duomenų stulpeliai;
  • kitose eilutėse arba nuo pat pirmos gali būti išvardinti duomenys - vienas duomenų masyvas per eilutę;
  • stulpeliams atskirti naudojami kableliai (iš to kilęs formato pavadinimas - kableliu atskirtos reikšmės);
  • reikšmės turinkčios kablelį turi būti apskliaudžiamos kabutėmis;
  • kabutės reikšmėse turi būti aprašomos dviem kabutėmis arba dedamas '\' simbolis prieš jas.

Jeigu kartais prireikia dirbti su CSV failu terminale, tai puikiai pravers atviro kodo miller programa. Kadangi kūrėjai instrukcijų (dar?) neparašė, tai įdiegsime ją taip paprastai:

git clone https://github.com/johnkerl/miller.git
cd miller
autoreconf -if
./configure
make

Sutinku, ne pats gražiausias diegimo procesas, bet ką jau padarysi. Yra kur tobulėt programos autoriams.

Ir Jūsų kompiuteryje bus įdiegta mlr komanda, kurią galėsite pasinaudoti darbui su CSV failais.

Programos pagalos apraše rasite krūvas panaudojimo pavyzdžių.

Pasižiūrime CSV failo turinį:

$ mlr --csv cat Managers.csv

playerID,yearID,teamID,lgID,inseason,G,W,L,rank,plyrMgr
wrighha01,1871,BS1,NA,1,31,20,10,3,Y
woodji01,1871,CH1,NA,1,28,19,9,2,Y
paborch01,1871,CL1,NA,1,29,10,19,8,Y
lennobi01,1871,FW1,NA,1,14,5,9,8,Y

Rodome tik kai kuriuos stulpelius:

$ mlr --csv cut -f playerID,yearID  Managers.csv

playerID,yearID
wrighha01,1871
woodji01,1871
paborch01,1871
lennobi01,1871

Darome tikrą CSV failo duomenų filtravimą:

$ mlr --csv filter '$yearID > 1871'  Managers.csv

playerID,yearID,teamID,lgID,inseason,G,W,L,rank,plyrMgr
cravebi01,1872,BL1,NA,1,41,27,13,2,Y
millsev01,1872,BL1,NA,2,17,8,6,2,Y
clintji01,1872,BR1,NA,1,11,0,11,9,Y
woodji01,1872,BR1,NA,2,18,3,15,9,Y

Išrikiuojame duomenis pagal stulpelį:

$ mlr --csv sort -f playerID Managers.csv

playerID,yearID,teamID,lgID,inseason,G,W,L,rank,plyrMgr
actama99,2007,WAS,NL,1,162,73,89,4,N
actama99,2008,WAS,NL,1,161,59,102,5,N
actama99,2009,WAS,NL,1,87,26,61,5,N
actama99,2010,CLE,AL,1,162,69,93,4,N

Darome aritmetines operacijas:

$ mlr --csv put '$years = $yearID + 1000' then cut -f playerID,years Managers.csv

playerID,years
wrighha01,2871
woodji01,2871
paborch01,2871
lennobi01,2871

Trumpai tariant - įspūdinga biblioteka. Lengvai eksportuoti duomenys į CSV failą gali virsti tikra duomenų baze su daugybe galimybių. Žinoma, gerai išmanant awk galbūt ir nenorėsis mokintis naudotis dar viena programa, bet man, asmeniškai, po awk ši komanda pasirodė kaip produktyvesnis būdas tai daryti.

Išbandykite patys. O programos pagalbos apraše rasite dar daugiau naudingų pavyzdžių.

by Remigijus Jarmalavičius at 2016 m. January 5 d. 4:00

January 2 d.

Atviro kodo mokymo centras

Geriausios 2015-ųjų distribucijos

Sveiki sulaukę naujų metų! Prisiminkime penkias geriausias praėjusių metų distribucijas.


Penktoji vieta: Fedora 23

Manau, kad Fedora geriausia distribucija su Gnome Shell aplinka. Kitaip nei kitose distribucijose Gnome Shell Fedoroje veikia stabiliai. Man ji nei karto nebuvo pakibusi.

 

Ketvirtoji vieta: Ubuntu 15.10

Ilgai buvusi geriausia distribucija, Ubuntu nuo 2011 metų prarado daug naudotojų, tačiau Ubuntu 15.10 leidimas yra geresnis ir stabilesnis už ankstesnius. Tikėkitės, kad nauja Ubuntu 16.04 LTS susigrąžins draugiškiausios distribucijos vardą.

 

Trečioji vieta: Netrunner 17 Horizon

Manau, kad Netrunner yra geriausia distribucija su KDE aplinka. Ji veikia stabiliau už Kubuntu ir pagal nutylėjimą įdiegta daugiau programinės įrangos. Taip pat Netrunner išvaizda yra gražesnė.

 

Antroji vieta: Zorin OS 10

Zorin OS yra geriausias pasirinkimas, ieškantiems panašios distribucijos į Windows ar MacOS. Naudotojai gali lengvai pasirinkti sistemos išvaizdą. Taip pat įdiegta panaši programinė įranga kaip Windows.

 

Pirmoji vieta: Linux Mint 17.3

Jei namų vartotojas paklaustų kokią distribuciją rinktis, patarčiau Linux Mint. Ši distribucija yra labai draugiška naudotojui ir turi daugumą naujausių savybių kaip ir komercinės operacinės sistemos ar net jas lenkia. Naujausias leidimas jau visiškai lituanizuotas.

Dar nepaminėjau, kad Linux Mint distributyvų atnaujinimas vyksta sklandžiau už kitas distribucijas.

 

Apibendrinimas:

Jei neradote savo mėgiamos distribucijos, dar nereiškia, kad ji bloga. Tiesiog man pritrūko vietų, o ištęsti sąrašo nenorėjau. Sąraše turėjo būti ElementaryOS, OpenSUSE, Manjaro ir kitos geros distribucijos.

 

Linkėjimai!

by Sigitas Kalinas at 2016 m. January 2 d. 13:37

December 24 d.

Atviro kodo mokymo centras

Manjaro 15.12 išleista

Prieš šventes sulaukėme naujo Manjaro Linux leidimo. Šiame leidime rasime atnaujintus KDE, XFCE ir kitus paketus.


Video:

 

 

Naujovės trumpai:

  • Grafinės aplinkos: KDE Plasma 5.5 ir XFCE 4.12.

  • Branduolys: Linux 4.1 LTS.

  • Atnaujinti Manjaro nustatymai.

  • Atnaujintos paketų tvarkyklės Pamac r Octopi.

  • Optimizuoti Manjaro įrankiai, ištaisytos klaidos.

  • Pagerintas diegimo vedlys Thus.

  • Atnaujinti paketai: KDE programos 15.12, Virtualbox 5.0.12, mesa 11.0.8, Wine 1.8.

  • Ištaisytos programinės įrangos klaidos.

 

Atsisiųsti

by Sigitas Kalinas at 2015 m. December 24 d. 12:41