abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 12:22 | Zajímavý software

    OpenClaw je open-source AI asistent pro vykonávaní různých úkolů, ovládaný uživatelem prostřednictvím běžných chatovacích aplikací jako jsou například WhatsApp, Telegram nebo Discord. Asistent podporuje jak různé cloudové modely, tak i lokální, nicméně doporučován je pouze proprietární model Claude Opus 4.5 od firmy Anthropic v placené variantě. GitHubová stránka projektu OpenClaw.

    NUKE GAZA! 🎆 | Komentářů: 1
    dnes 03:00 | Komunita

    Projekt VideoLAN a multimediální přehrávač VLC (Wikipedie) dnes slaví 25 let. Vlastní, tenkrát ještě studentský projekt, začal již v roce 1996 na vysoké škole École Centrale Paris. V první únorový den roku 2001 ale škola oficiálně povolila přelicencování zdrojových kódů na GPL a tím pádem umožnila používání VLC mimo akademickou půdu.

    Ladislav Hagara | Komentářů: 1
    včera 18:11 | Humor

    Moltbook je sociální síť podobná Redditu, ovšem pouze pro agenty umělé inteligence - lidé se mohou účastnit pouze jako pozorovatelé. Agenti tam například rozebírají podivné chování lidí, hledají chyby své vlastní sociální sítě, případně spolu filozofují o existenciálních otázkách 🤖.

    NUKE GAZA! 🎆 | Komentářů: 2
    včera 18:00 | Humor

    scx_horoscope je „vědecky pochybný, kosmicky vtipný“ plně funkční plánovač CPU založený na sched_ext. Počítá s polohami Slunce a planet, fázemi měsíce a znameními zvěrokruhu. Upozornil na něj PC Gamer.

    |🇵🇸 | Komentářů: 4
    30.1. 18:22 | Komunita

    O víkendu probíhá v Bruselu konference FOSDEM 2026 (Free and Open source Software Developers’ European Meeting). Program konference je velice nabitý: 37 místností, 71 tracků, 1184 přednášejících, 1069 přednášek, prezentací a workshopů. Sledovat je lze i online. K dispozici budou jejich videozáznamy. Aktuální dění lze sledovat na sociálních sítích.

    Ladislav Hagara | Komentářů: 4
    30.1. 18:00 | IT novinky

    Společnost Nex Computer stojící za "notebooky bez procesorů a pamětí" NexDock představila telefon NexPhone, který může funguje jako desktop PC, stačí k němu připojit monitor, klávesnici a myš nebo NexDock. Telefon by měl být k dispozici ve třetím čtvrtletí letošního roku. Jeho cena by měla být 549 dolarů. Předobjednat jej lze s vratní zálohou 199 dolarů. V dual-bootu by měl být předinstalovaný Android s Linuxem (Debian) jako aplikací a Windows 11.

    Ladislav Hagara | Komentářů: 3
    30.1. 16:00 | Nová verze

    Byla vydána nová major verze 9.0 softwaru pro správu elektronických knih Calibre (Wikipedie). Přehled novinek v poznámkách k vydání. Vypíchnuta je podpora AI.

    Ladislav Hagara | Komentářů: 2
    30.1. 14:22 | Nová verze

    Wasmer byl vydán ve verzi 7.0. Jedná se o běhové prostředí pro programy ve WebAssembly. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT.

    Ladislav Hagara | Komentářů: 1
    30.1. 12:22 | Zajímavý software

    V reakci na nepopulární plán Microsoftu ještě více ve Windows prohloubit integraci umělé inteligence Copilot, Opera na sociální síti 𝕏 oznámila, že připravuje nativní linuxovou verzi prohlížeče Opera GX. Jedná se o internetový prohlížeč zaměřený pro hráče, přičemž obsahuje všechny základní funkce běžného prohlížeče Opera. Kromě integrace sociálních sítí prohlížeč například disponuje 'omezovačem', který umožňuje uživatelům omezit využití sítě, procesoru a paměti prohlížečem, aby se tak šetřily systémové zdroje pro jinou aktivitu.

    NUKE GAZA! 🎆 | Komentářů: 8
    30.1. 06:22 | Zajímavý software

    NVIDIA vydala nativního klienta své cloudové herní služby GeForce NOW pro Linux. Zatím v beta verzi.

    Ladislav Hagara | Komentářů: 3
    Které desktopové prostředí na Linuxu používáte?
     (19%)
     (6%)
     (0%)
     (10%)
     (24%)
     (3%)
     (5%)
     (2%)
     (12%)
     (31%)
    Celkem 712 hlasů
     Komentářů: 22, poslední 29.1. 23:06
    Rozcestník

    Relational pipes v0.14

    Byla vydána nová vývojová verze datového formátu a souvisejících nástrojů Relational pipes. Novinkou verze v0.14 jsou skripty pro Bash completion (napovídání parametrů v shellu), vylepšení SQL a AWK modulů a změna verze licence z GNU GPLv3+ na GNU GPLv3. Na stránce s příklady nově nalezneme několik ukázek týkajících se SQL a XMLTable – mj. jak načíst seznam nadpisů nebo obrázků z XHTML stránky nebo jak na svém disku najít největší spustitelné soubory nebo nejčastěji používané dynamické knihovny.

    30.10.2019 19:11 | xkucf03 | Nová verze


    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    30.10.2019 20:26 Marek the Brave
    Rozbalit Rozbalit vše Re: Relational pipes v0.14
    Kolik lidí to používá?
    xkucf03 avatar 30.10.2019 20:55 xkucf03 | skóre: 50 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Relational pipes v0.14

    Vzhledem k tomu, že je to nestabilní1 vývojová verze, tak kromě mě asi moc lidí ne :-)

    [1] nestabilní z pohledu API – a cílem těchto verzí je právě to API (parametry příkazové řádky, formát, C++ rozhraní) odladit – budu rád, když se na to podívá někdo další (víc očí, víc vidí)

    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    31.10.2019 10:23 kralyk z abclinuxu | skóre: 29 | blog:
    Rozbalit Rozbalit vše Re: Relational pipes v0.14
    Stále mi není jasný, na co to vlastně je. Když koukám na příklady, u těch jednoduších si říkám, že by na to stačil shell, u těch složitějších, že bych vzal python. Např. ten příklad s nejpoužívanější knihovnou mi nepřijde, že by byl v shellu složitější:

    find /usr/bin -type f -exec ldd {} \; | sed -e 's/ =>.*//' -e 's/(.*//' | sort | uniq -c | sort -nr | head -n 20

    Neměřil jsem to, ale hádám, že ani nebude pomalejší, protože bottleneck je stejně volání ldd ...

    Jinak abych nebyl jen negativní, je cool, že se ti podařilo dát projekt dohromady a v jazyce, který je pro tebe nový...
    xkucf03 avatar 31.10.2019 12:30 xkucf03 | skóre: 50 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Relational pipes v0.14
    Když koukám na příklady, u těch jednodušších si říkám, že by na to stačil shell, u těch složitějších, že bych vzal python.

    Je to právě někde mezi tím. Jde o mírné vylepšení unixového shellu tak, aby se odstranily jeho problémy, ale zachovalo se to dobré a pořád jsi mohl zůstat v shellu. Tzn. můžeš tu rouru poskládat ad-hoc na příkazové řádce (teď s tím Bash completion se to konečně dá používat :-), zpracovat nějaká data a zahodit ji (resp. zůstane ti v historii shellu, takže se k ní můžeš vrátit) tzn. něco jako Perl onelinery. A když zjistíš, že se ti to líbí a chtěl bys to používat opakovaně, tak to prostě jen uložíš do .sh souboru a používáš. Zatímco kdybys to musel od samého začátku programovat (tzn. založit si nový soubor, pak ho zase mazat nebo dávat do nějaké správné složky, přepínat okna, spouštět interpret/kompilátor atd.), tak by ses na to asi vykašlal. Mně se celkem často stává, že mám otevřený terminál, jsem v nějaké složce, chci tam něco řešit… ale nestojí mi to za to, abych kvůli tomu začal programovat (vím, že to zní trochu divně, když se programováním živím, ale snad chápeš, co tím chci říct).

    Spousta lidí umí SQL (Scheme, AWK, XPath, Python atd.) a je to pro ně přirozený jazyk, ale nikdy by je nenapadlo řešit pomocí něj jednoduché úlohy, protože by si kvůli tomu museli zakládat schéma a tabulky na nějakém serveru, pak to uklízet, řešit hesla… takže to radši nějak zmastí pomocí příkazů typu grep, cut, sed, sort… přitom by to šlo řešit elegantně třeba pomocí GROUP BY nebo window či jiných funkcí atd. Jeden z principů těch Relačních rour je nevytvářet nic moc nového, ale jen zpřístupnit a propojit stávající technologie (programovací/dotazovací jazyky, shelly, formáty…).

    Pak jde o násobení možností, které nastává díky tomu jednotnému datovému modelu (relace, místo stromových struktur či grafů obvyklých v objektových programovacích jazycích). Když se podíváš na Big picture na titulní stránce, tak je tam 8 vstupních formátů, 8 výstupních, takže to dává 8×8 možností × počet transformací a s každým dalším modulem se to násobí. To mi na tom přijde zajímavé – že dopíšeš malý jednoduchý modul a najednou jde použít v mnoha různých kontextech, mnoha způsoby.

    Klasické unixové roury jsou přesně to samé a hrozně se mi kvůli tomu líbí, ale vždycky mne na nich rozčilovalo to, že jim chybí malý kousek k dokonalosti – ten dobře definovaný společný formát, kterým by se předávala strukturovaná data. Proto to chci k tomu dobře definovanému formátu dotáhnout. V současnosti ta implementace nástrojů předbíhá definici toho formátu (formální specifikace dosud není vydaná), ale to proto, abych mohl praktickým používáním odladit ten formát a nebyl to jen teoretický návrh, který vypadá dobře na papíře, ale pak se v praxi ukáže, že tomu něco chybí nebo přebývá.

    Jako Pythonista bys mohl pomoci s návrhem toho modulu relpipe-tr-python – dlouho jsem na to nesáhl a mezi tím jsem pokročil mnohem dál s Guile a AWK moduly, se kterými jsem teď celkem spokojený. Jde v nich filtrovat i upravovat záznamy, přidávat nebo ubírat atributy, měnit jejich typ nebo i přidávat záznamy. V podstatě tam jde dělat totéž co v SQL, akorát to píšeš v jiném jazyce. Totéž bych chtěl pro ten Python, ale je potřeba nějak vyřešit kolize mezi názvy atributů a klíčových slov (v Guile jsem tam dal $ prefix; v AWKu jsem tam dal seznam rezervovaných jmen, která se escapují, když je kolize). Tu syntaxi --where--for-each bych tam ideálně chtěl zachovat, ať je to jednotné. Může to fungovat i tak, že budeš hodnoty těch atributů tahat z nějaké mapy, ale to mi přijde nepohodlné na psaní (klíče by byly jako textové řetězce v uvozovkách, takže by se v Pythonu ty filtry/transformace nepsaly tak hezky, jako v AWK nebo Guile).

    $ relpipe-in-fstab | relpipe-tr-awk --debug-variable-mapping --relation '.*' --where 'device == "proc"' | relpipe-out-tabular 
    fstab.variableMapping:
     ╭────────────────────┬───────────────────╮
     │ attribute (string) │ variable (string) │
     ├────────────────────┼───────────────────┤
     │ device             │ device            │
     │ dump               │ dump              │
     │ mount_point        │ mount_point       │
     │ options            │ options           │
     │ pass               │ pass              │
     │ scheme             │ scheme            │
     │ type               │ type              │
     ╰────────────────────┴───────────────────╯
    Record count: 7
    fstab:
     ╭─────────────────┬─────────────────┬──────────────────────┬───────────────┬─────────────────────┬────────────────┬────────────────╮
     │ scheme (string) │ device (string) │ mount_point (string) │ type (string) │ options    (string) │ dump (integer) │ pass (integer) │
     ├─────────────────┼─────────────────┼──────────────────────┼───────────────┼─────────────────────┼────────────────┼────────────────┤
     │                 │ proc            │ /proc                │ proc          │ noexec,nosuid,nodev │              0 │              0 │
     ╰─────────────────┴─────────────────┴──────────────────────┴───────────────┴─────────────────────┴────────────────┴────────────────╯
    Record count: 1
    
    
    
    $ relpipe-in-fstab | relpipe-tr-guile --debug-variable-mapping --relation '.*' --where '(string= $device "proc")' | relpipe-out-tabular 
    fstab.variableMapping:
     ╭────────────────────┬───────────────────╮
     │ attribute (string) │ variable (string) │
     ├────────────────────┼───────────────────┤
     │ device             │ $device           │
     │ dump               │ $dump             │
     │ mount_point        │ $mount_point      │
     │ options            │ $options          │
     │ pass               │ $pass             │
     │ scheme             │ $scheme           │
     │ type               │ $type             │
     ╰────────────────────┴───────────────────╯
    Record count: 7
    fstab:
     ╭─────────────────┬─────────────────┬──────────────────────┬───────────────┬─────────────────────┬────────────────┬────────────────╮
     │ scheme (string) │ device (string) │ mount_point (string) │ type (string) │ options    (string) │ dump (integer) │ pass (integer) │
     ├─────────────────┼─────────────────┼──────────────────────┼───────────────┼─────────────────────┼────────────────┼────────────────┤
     │                 │ proc            │ /proc                │ proc          │ noexec,nosuid,nodev │              0 │              0 │
     ╰─────────────────┴─────────────────┴──────────────────────┴───────────────┴─────────────────────┴────────────────┴────────────────╯
    Record count: 1

    Jde o to, aby člověk mohl jednoduše napsat pár výrazů ve svém oblíbeném jazyce do toho --where--for-each a jinak to bylo stejné.

    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    1.11.2019 00:29 kralyk z abclinuxu | skóre: 29 | blog:
    Rozbalit Rozbalit vše Re: Relational pipes v0.14
    Jako Pythonista bys mohl pomoci s návrhem toho modulu relpipe-tr-python
    Na to nejsem ten správnej člověk, proti relacím a SQLku nic nemam, ale nadšenec taky nejsem.

    A python už teď taky moc nedělám. Spíš jsem ho zmiňoval proto, že to je imo takaová lingua franca na tyhle věci...
    26.2.2022 12:10 upozorneni
    Rozbalit Rozbalit vše Re: Relational pipes v0.14
    UPOZORNÉNÍ --- Autor tohoto softwaru je ruský kolaborant, podobruje šíření ruských desinformací ve válce o Ukrajinu.

    Založit nové vláknoNahoru


    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.