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:55 | Pozvánky

    Konference OpenAlt 2025 proběhne již příští víkend 1. a 2. listopadu v Brně. Nabídne přibližně 80 přednášek a workshopů rozdělených do 7 tematických tracků. Program se může ještě mírně měnit až do samotné konference, a to s ohledem na opožděné úpravy abstraktů i případné podzimní virózy. Díky partnerům je vstup na konferenci zdarma. Registrace není nutná. Vyplnění formuláře však pomůže s lepším plánováním dalších ročníků konference.

    Ladislav Hagara | Komentářů: 0
    dnes 05:33 | IT novinky

    Samsung představil headset Galaxy XR se 4K Micro-OLED displeji, procesorem Snapdragon XR2+ Gen 2, 16 GB RAM, 256 GB úložištěm, operačním systémem Android XR a Gemini AI.

    Ladislav Hagara | Komentářů: 1
    dnes 05:22 | Nová verze

    Před konferencí Next.js Conf 2025 bylo oznámeno vydání nové verze 16 open source frameworku Next.js (Wikipedie) pro psaní webových aplikací v Reactu. Přehled novinek v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    včera 23:33 | Komunita

    Sovereign Tech Fund oznámil finanční podporu následujících open source projektů: Scala, SDCC, Let's Encrypt, Servo, chatmail, Drupal, Fedify, openprinting, PHP, Apache Arrow, OpenSSL, R Project, Open Web Docs, conda, systemd a phpseclib.

    Ladislav Hagara | Komentářů: 0
    včera 13:11 | Nová verze

    Bylo vydáno OpenBSD 7.8. S předběžnou podporou Raspberry Pi 5. Opět bez písničky.

    Ladislav Hagara | Komentářů: 0
    včera 05:44 | Nová verze Ladislav Hagara | Komentářů: 2
    včera 05:22 | Bezpečnostní upozornění

    Byly publikovány informace o kritické zranitelnosti v knihovně pro Rust async-tar a jejích forcích tokio-tar, krata-tokio-tar a astral-tokio-tar. Jedná se o zranitelnost CVE-2025-62518 s CVSS 8.1. Nálezci je pojmenovali TARmageddon.

    Ladislav Hagara | Komentářů: 4
    21.10. 23:15 | Nová verze

    AlmaLinux přinese s verzí 10.1 podporu btrfs. XFS bude stále jako výchozí filesystém, ale instalátor nabídne i btrfs. Více informací naleznete v oficiálním oznámení.

    Max | Komentářů: 3
    21.10. 22:33 | IT novinky

    Společnost OpenAI představila svůj vlastní webový prohlížeč ChatGPT Atlas. Zatím je k dispozici pouze na macOS.

    Ladislav Hagara | Komentářů: 0
    21.10. 14:33 | Nová verze

    Desktopové prostředí KDE Plasma bylo vydáno ve verzi 6.5 (Mastodon). Přehled novinek i s videi a se snímky obrazovek v oficiálním oznámení. Podrobný přehled v seznamu změn.

    Ladislav Hagara | Komentářů: 3
    Jaké řešení používáte k vývoji / práci?
     (36%)
     (48%)
     (20%)
     (20%)
     (22%)
     (18%)
     (21%)
     (18%)
     (18%)
    Celkem 257 hlasů
     Komentářů: 14, poslední 14.10. 09:04
    Rozcestník

    Scout, aneb prohledáváme distribuce (update)

    26.6.2008 09:41 | Přečteno: 1596× | Linux | Výběrový blog | poslední úprava: 26.6.2008 17:31

    V rámci svého času na inovace, které máme v práci, jsem začal řešit problém, který mám jak já, tak i lidé na koferencích. Když tvořím nějaký balíček, stane se, že přehlédnu nějakou závislost a překlad spadne. Jenže jak zjistit z ména třídy název potřebného balíčku (soudě podle poštovních konferencí jsem nebyl sám, kdo měl takový problém), takže jsem začal psát jednoúčelovou aplikaci, která měla nahradit původní alias na grep a hromadu x megových textových souborů jako index.

    Pavol Rusnák mezitím pracoval na reimplementaci Ubuntího command-not-found a přišlo mu, že se řeší velice podobný problém a navrhnul spojit oba projekty do jednoho. A tak vznikl scout.

    Ještě před dovolenou jsem tedy napsal základ pro rozdělení aplikace na moduly, třídu pro práci s databází a v klidu si odjel pryč. Mezitím Pavol vzal můj prototyp a podstatně ho vylepšil a hlavně rozšířil o data, takže až jsem se po třech týdnech vrátil, scout byl poprvé zveřejněn. V té době uměl prohledávat binární soubory, javovské třídy, webpin a makra autoconfu.

    Konečně se dostáváme k tomu, co scout vlastně dělá. Indexuje a prohledává obsah balíčků v distribuci (obecně jakémkoliv repositáři) a dokáže uživateli prozradit jméno balíčku (a distribuce/repozitáře), v němž je dotyčná věc nainstalována. Hlavní fintou je, že se prohledává obsah, který uživatel nemá nainstalovaný. Takže vím, že potřebuji příkaz ant, takže příkaz

    $ scout bin ant
     repository | binary | path     | package
    ------------+--------+----------+---------
     suse110    | ant    | /usr/bin | ant
    
    mi prozradí vše potřebné. Pochopitelně ve spojené s command-not-found handlerem pro bash a zsh je to pro uživatele jednodušeji použitelné, ale openSUSE zatím nemá tento handler začleněn. Upravený bash si můžete stáhnout z home:prusnak.

    Mezitím Marek Stopka napsal podporu pro bash-completion a Thomas Schraitle napsal v Docbooku dokumentaci a já se seznamoval se zdrojáky a napsal indexaci modulů pro Python a experimentální (rozumněj nefunční) verzi pro indexaci Perlovských modulů. Zároveň jsem připravil malé demo, kterak by bylo možné použít scout pro automatickou instalaci závislostí Java programů, které rovněž můžete shlédnout v Pavlově blogu.

    Wrapper pracuje následovně

    1. Spustí program.
    2. Pokud spadne, najde chybějící třídu.
    3. Tu předhodí scoutovi, který vrátí balíček/balíčky, které ji obsahují.
    4. Když je jich více, nechá se uživateli vybrat, který nainstalovat.
    5. Uživatel vybere, zypper nainstaluje.
    6. Wrapper znovu spustí program.
    7. Voila! A program pracuje.
    Pochopitelně je to jenom demo a funguje jen na tento jeden příklad a za předpokladu, že log4j nemáte nainstalováno, nicméně ukazuje směr, jakým by se dal v budoucnu scout využít. Podobná věc může fungovat i pro Python/Perl/Ruby. Další možností je taky nápovědní systém, který buďto zanalyzuje zdrojový kód, nebo udělá post-mortem analýzu chybové hlášky a napoví uživateli, které závislosti jsou třeba. Pro to bude třeba indexovat hlavičkové soubory, soubory pkgconfigu a podobně. Stejně tak by bylo dobré namísto duplikace binárních databází používat přímo indexové soubory libzyppu, ale zatím tomu brání technické obtíže. Nebo převést index soubory do formátu pro beagle/strigi a zapojit i desktop search, ... Ale seznam TODO máme delší, než Evropská ústava, takže se ani nepočítáme, že to v rozumném časovém horizontu zvládenem všechno.

    Zdrojové soubory jsou na repo.or.cz/w/scout.git, i když mám pocit, že není možné jej používat přímo po stažení (ach ty vývojářské verze)*. Zdrojové soubory jsou zatím tak syrové, že je může pozřít i vegan jedící pouze syrové potraviny, ale to se postupně zlepšuje** a čekají nás světlé zítřky. Objevil se náznak testů a v souvislosti s experimentálním D-BUS rozhraním (zatím dostupné pouze v mojí lokální gitovské větvi) se kód upravuje tak, aby byl o něco tvárnější a modulárnější (tím nemyslím existenci externím modulů). Ale z uživatelského hlediska pracuje dobře.

    Je lepší si scout nainstalovat z home:prusnak:scout (data jsou z technicko/komprimačních důvodů v home:prusnak:scout-data), který je pravidelně synchronizován se stavem v gitu. Balíčky jsou vytvořeny pro všechny hlavní RPM distribuce (CentOS, RHEL, Fedora, Mandriva, openSUSE/SLE), nicméně data zatím máme jen z openSUSE a projektu jpackage a Packman, takže použitelnost na ostatních distribucích je diskutabilní, ale je způsobena hlavně tím, že nemáme přístup k mirroru (nejlépe přes NFS, nebo jiný síťový FS) jiné distribuce, než je openSUSE/SLE. Spolupráci při tvorbě indexů pro jiné distribuce se nebráníme, i když by to asi chtělo prošťouchnout a upravit skripty, které generují indexy.

    Update:
    * V mezidobí Pavol začlenil patch, který tuto nepříjemnou věc vyřešil.
    **Stejně tak jsem přepsal formátovací kód, který mě v předchozí verzi hrozně lezl na nervy (namísto psaní nových vlastností se bavím tímto).
    A přidán odkaz na wiki stránku en.opensuse.org/Scout

           

    Hodnocení: 100 %

            špatnédobré        

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

    Komentáře

    Vložit další komentář

    26.6.2008 14:57 Käyttäjä 11133 | skóre: 58 | blog: Ajattelee menneisyyttä
    Rozbalit Rozbalit vše Re: Scout, aneb prohledáváme distribuce
    Jo, jo jedná se o zajímavý tool :-)
    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.