Byla vydána verze 4.0.0 programovacího jazyka Ruby (Wikipedie). S Ruby Box a ZJIT. Ruby lze vyzkoušet na webové stránce TryRuby. U příležitosti 30. narozenin, první veřejná verze Ruby 0.95 byla oznámena 21. prosince 1995, proběhl redesign webových stránek.
Všem čtenářkám a čtenářům AbcLinuxu krásné Vánoce.
Byla vydána nová verze 7.0 linuxové distribuce Parrot OS (Wikipedie). S kódovým názvem Echo. Jedná se o linuxovou distribuci založenou na Debianu a zaměřenou na penetrační testování, digitální forenzní analýzu, reverzní inženýrství, hacking, anonymitu nebo kryptografii. Přehled novinek v příspěvku na blogu.
Vývojáři postmarketOS vydali verzi 25.12 tohoto před osmi lety představeného operačního systému pro chytré telefony vycházejícího z optimalizovaného a nakonfigurovaného Alpine Linuxu s vlastními balíčky. Přehled novinek v příspěvku na blogu. Na výběr jsou 4 uživatelská rozhraní: GNOME Shell on Mobile, KDE Plasma Mobile, Phosh a Sxmo.
Byla vydána nová verze 0.41.0 multimediálního přehrávače mpv (Wikipedie) vycházejícího z přehrávačů MPlayer a mplayer2. Přehled novinek, změn a oprav na GitHubu. Požadován je FFmpeg 6.1 nebo novější a také libplacebo 6.338.2 nebo novější.
Byla vydána nová verze 5.5 (novinky) skriptovacího jazyka Lua (Wikipedie). Po pěti a půl letech od vydání verze 5.4.
Byla vydána nová verze 5.4.0 programu na úpravu digitálních fotografií darktable (Wikipedie). Z novinek lze vypíchnout vylepšenou podporu Waylandu. Nejnovější darktable by měl na Waylandu fungovat stejně dobře jako na X11.
Byla vydána beta verze Linux Mintu 22.3 s kódovým jménem Zena. Podrobnosti v přehledu novinek a poznámkách k vydání. Vypíchnout lze, že nástroj Systémová hlášení (System Reports) získal mnoho nových funkcí a byl přejmenován na Informace o systému (System Information). Linux Mint 22.3 bude podporován do roku 2029.
GNU Project Debugger aneb GDB byl vydán ve verzi 17.1. Podrobný přehled novinek v souboru NEWS.
Josef Průša oznámil zveřejnění kompletních CAD souborů rámů tiskáren Prusa CORE One a CORE One L. Nejsou vydány pod obecnou veřejnou licenci GNU ani Creative Commons ale pod novou licencí OCL neboli Open Community License. Ta nepovoluje prodávat kompletní tiskárny či remixy založené na těchto zdrojích.
Minule jsem končil ochutnávkou několika textových editorů, potenciálně použitelných pro poznámky s průběžně vloženými fotografiemi (tedy jestli se ta digitální data, co ze senzoru lezou a docela připomínají scénu před objektivem dají fotografií nazvat - megapixly nejsou všechno a obrazová kvalita je ne na úrovni Nokia N900, ale spíš Nokia C2
). Autoři moc nekomunikovali, takže jsem se zamyslel nad tím, jak problém elegantně a bezbolestně vyřešit i bez nich.
Minule jsem zmiňoval Termux, který je k dispozici jak na Google Play tak na F-droidu. Kromě toho existují aplikace Termux api a Termux styling, u Googlu placené, na F-droidu zdarma (resp. s dobrovolným příspěvkem). Termux API otevírá možnost komunikace s "telefonem" - něco jako "phone-control" v Maemu na N900. Momentálně ještě nemám v Gemini SIMku, takže věci jako vytáčení čísla z příkazové řádky zatím nemám ošahané, ale mělo by jít ledacos, jenom bacha, musí se nainstalovat jak balíček v Termuxu, tak Androidí aplikace ! Pod Termuxem lze v chrootu provozovat i "normální" Linux, i když bez Xek - například tady je oficiální návod, jak nainstalovat Debian
Až na vyznavače EMACSu všichni víme, že nejlepší textový editor je vim.
Ve výchozím nastavení je ve vimu problém s českými znaky - na netu se podobné problémy řeší, ale celkem neúspěšně. Tak jsem místo strýčka googla použil vlastní mozek a zadal na stackexchange dotaz jak změnit výchozí kódou stránku ve vimu na UTF-8, ověřil si, že do .vimrc musím napsat set encoding=utf-8, otestoval a ono to pomohlo. Takže teď tento zápisek píšu ve vimu na Gemini. Hurá.
Zejména při kopírování a přesouvání souborů v mc jsem zjistil, že klávesnice Gemini postrádá insert. Google na první dobrou nic nevydal a tak jsem se vydal kupředu cestou pokus/omyl. Již Nokia N900 postrádající tabulátor mne naučila, že CTRL+I=TAB, Gemini dnes vděčím za poznatek, že CTRL+T=INSERT.
Ve Vimu se píše tradičně dobře, jediné, co bych mu vytkl je dotyková obrazovka, kde se omylem někde dotknu a skočí tam kurzor - ovšem řešením je set mouse=c a myš vesele ignoruje.
Takže máme termux a vim, celkem to spolu běhá - ale kam a jak uložit soubor tak, aby se dal jednoduše nahrát třeba na ábíčko ? Na úložiště má přístup jen root. Tedy až do okamžiku, kdy vlezeme do nastavení Androida-aplikace-termux-oprávnění a udělíme mu oprávnění hrabat se na disku. Od tohoto okamžiku i prostý uživatel může s "diskem" i případnou SD kartou libovolně manipulovat.
Jak ale vložit fotku ? Původně jsem plánoval užít Termux-api, ale musím přiznat, že využití foťáku je nespolehlivé a hlavně to rovnou práskne fotku bez možnosti náhledu. Tedy, náhled se dá udělat pomocí xdg-open (pustí Androidí nativní aplikaci), ale tohle je relativně pomalé.
Možná jsem to dostatečně nezdůraznil, ale Gemini má speciální klávesu "Gemini", která vyvolá menu ve stylu MacOSX. To se dá z převážné většiny upravovat, takže si tam můžeme dát Termux a aplikaci foťáku. Když chci vložit fotku, zmáčku Planet, vyberu foťák, odfotím, a fotka se mi uloží do tradiční Androidí cesty ~/storage/DCIM/Camera (udělal jsem si ln -s /storage/emulated/0/ ~/storage). No, a odtamtud si ho můžu "vyzvednout", jak jinak než VimScriptem definovaným ve .vimrc - funkce se jmenuje GetLastPhoto() - pokud je řádek prázdný, vloží __ptkn:název souboru (photo taken, pro další zpracování textového souboru
) a odřádkuje, jinak odřádkuje před vložením. A to vše v insert módu přes Alt-Photo. Elegantní, prosté, pouze to není WYSIWYG 
HP 200 LX měl také hezkou funkci na vložení data a času - pro vim existuje návod na VimWiki ,kterým jsem se lehce inspiroval, takže alt-Time, alt-Date, alt-timesstamp ...
Minule popisovaný problém s PgUp/Dn se Vimem řeší, protože máme Ctrl-U a Ctrl-D
. Každopádně ale
patch byl již do termuxu odeslán - zde je commit
Pro správu netermínovaných úkolů se mi osvědčilo TODO.txt, které jsem si trochu rozšířil, tekže s oficiální Androidí aplikací bohužel není úplně kompatibilní
- ale o tom v některém z dalších postů. Ale aby mi fungoval příslušný syntax highlighting, mám něco přidáno i do vimrc.
Pro ty, co vi(m) pozapomněli, připomínám nejčastější vimové zkratky či Cheat sheet pro vimskript, LearnVimScriptTheHardWay, návod jak namapovat divné kláveové zkratky. A můj starý návod na kontrolu pravopisu tady na abc.
No, a pokud by to někomu k něčemu bylo, tutaj je můj .vimrc:
"Commented .vimrc for Gemini by jirka.gemini
"Default encoding - needed for Gemini
set encoding=utf-8
"Mouse off, to enable set mouse=a
set mouse=c
"from old config, do not write to (SSD) disk too often
set updatetime=600000
set updatecount=1000
"Spell check - aspell/ispell needed
:command -nargs=1 Spl :call SpellFunc("<args>")
" SpellFunc by se dala napsat lépe, ale t.č. nemám čas --16.2.2014
:function SpellFunc(par)
: let p=a:par
: echo p
: if a:par=="off"
: set nospell
: endif
: if p=="cz"
: setlocal spell spelllang=cz
: set spell
: endif
: if p=="us"
: setlocal spell spelllang=us
: set spell
: endif
": setlocal spell spelllang=p
": else
": echo "Neznámý jazyk ("p")"
:endfunction
" HPLX compatibility - meta- date , meta. time
" ,d - normal date (not in INSERT mode, obviously)
" WIP !
" Timestamp - DoW D.M.Y H:M
execute "set <A-T>=\et"
execute "set <A-D>=\ed"
execute "set <A-S>=\es"
execute "set <A-P>=\ep"
nnoremap <A-T> "=strftime("%X")<CR>P
inoremap <A-T> <C-R>=strftime("%X")<CR>
" Date v1
nnoremap <A-D> "=strftime("%e.%m.%Y")<CR>P
"Date for todo ,D - Y-M-D date (not INSERT mode)
inoremap <A-D> <C-R>=strftime("%e.%m.%Y")<CR>
"s is timeStamp
inoremap <A-S> <C-R>=strftime("%Y-%m-%e")<CR>
nnoremap <A-S> "=strftime("%Y-%m-%e")<CR>P
"" end of WIP
" Alt-P, last photo taken
inoremap <A-P> <Esc>:call GetLastPhoto()<CR>i
"TODO.txt functions
autocmd BufRead,BufNewFile .*TODO set filetype=todo
" functions
function! GetLastPhoto()
let r=system('ls ~/storage/DCIM/Camera -t|head -n1') "execute first
if (col("$")!=1) "If current line is not empty, put newline
normal! o
endif
call setline(line('.'),getline('.').'__ptkn:'.r)
"erase last rubbish byte and make a new line
normal! $x
normal! o
endfunction
Takže člověk píše text, pořizuje "jakožefotografie" a teď to nějak sesynchronizovat. Skoro před pěti lety jsem ve svém mikroseriálu popisoval, jak odcházím od Googlu - nejdřív pošta, kalendář a kontakty s druhou částí (mimochodem, v současné době je na to nejlepší DavSync !). Na data jsem začal používat owncloud, kam jsem posléze přesunul i kontakty a kalendář. Nyní mám i instanci NextCloudu, ale N900 má obstarožní synchronizační knihovnu, která se s NextCloudem nekamarádí. Takžejak synchronizovat data se zdá jasné - prostě oficiální aplikace Own/Next cloudu, ne ?
Ne.To, že nextcloud automaticky nenahrává nové soubory z androidu se ví a zdá se, že se to nikomu nechce řešit. O zmiňované alternativě SyncThing o něco níže.
Jako správný vyznavač Tuxe jsem si říkal, jestli by nestálo zato zbastlit nějaký webdav synchronizovátko v pythonu v Termuxu. Nakonec k tomu nedošlo, ale kdybyste někdo měli podobné choutky, tak doporučím WebDav-sync, easy WebDav (to je jen knihovna), Webdav-sync a hlavně projekt Webdavclient. Tam jsem se dočetl docela zajímavou informaci, že řada severů "komerčních společností" nabízí WebDav:
Na synchronizaci WebDavu/*cloudu existuje foldersync a onesource Android-davsync, nicméně ty trpí stejnými neduhy. Vzhledem k tomu, že jsem ještě nepřestal používat Dropbox, zjistil jsem, že od MetaCtl exituje aplikace Dropsync a obdobná pro google drive. Ano, Dropbox je proprietární, nesvobodný a vůbec fuj ... no, aplikace je pro jednu složku/adresář a soubory do 10 MB zadarmo, vyzkoušel jsem a "just works". Soubory se obousměrně synchronizují ... prostě paráda, doporučuji. Uvažoval jsem, že bych u metactrl poptal obecné webdav řešení, ale mít proprietární aplikaci pro synchronizaci s Owncloudem ...
Takže nakonec jsem se rozhodl, že ten SyncThing vyzkouším. I když na Debianu 8 není SyncThing v základním repozitáři (v 9ce už je !), existuje návod pro blbce včetně toho, jak to pustit jako službu. Já jsem se rozhodl to provozovat pod jedním uživatelem, pro začáteční testování jsem to prostě pustil v screenu. Autostart pod běžným i neběžným uživatelem řeší tutaj v návodu SyncThing GUI tradičně poslouchá na 127.0.0.1:8384. Standardně nenastavuje uživatele ani heslo. Proto je dobré vlézt do nastavení http://127.0.0.1:8384 na tam to nastavit. Diskuze o tom, že by to mělo být výchozí nastavení je tady
Po dvou týdnech používání musím říct, že úplně dokonalé to není, narozdíl od Dropboxí aplikace od MetaCtl se tomu občas nechce synchronizovat, ale když aplikaci na Androidu pustím, nebo nechám restartovat démona, tak se to chytne. Nicméně se zatím zdá, že je to docela snesitelné a použitelné, Přes centrální servery jdou jenom informace o adresách, synchronizuje se to i přes lokální ipv6 :-o a pro úplné paranoiky se dá vynutit i vlastní server, který předává IPadresy a řeší NATy atd.
No a příště už snad doopravdy k jednotlivým PIM aplikacím a/nebo office suite
.
Tiskni
Sdílej:
ale bezpečně vím, že emacs
Jak by se dosáhlo toho přepínání složek/projektů?aliasy, alebo goto?