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 05:44 | Komunita

    PSF (Python Software Foundation) po mnoha měsících práce získala grant ve výši 1,5 milionu dolarů od americké vládní NSF (National Science Foundation) v rámci programu "Bezpečnost, ochrana a soukromí open source ekosystémů" na zvýšení bezpečnosti Pythonu a PyPI. PSF ale nesouhlasí s předloženou podmínkou grantu, že během trvání finanční podpory nebude žádným způsobem podporovat diverzitu, rovnost a inkluzi (DEI). PSF má diverzitu přímo ve svém poslání (Mission) a proto grant odmítla.

    Ladislav Hagara | Komentářů: 5
    dnes 04:55 | Nová verze

    Balík nástrojů Rust Coreutils / uutils coreutils, tj. nástrojů z GNU Coreutils napsaných v programovacím jazyce Rust, byl vydán ve verzi 0.3.0. Z 634 testů kompatibility Rust Coreutils s GNU Coreutils bylo úspěšných 532, tj. 83,91 %. V Ubuntu 25.10 se již používá Rust Coreutils místo GNU Coreutils, což může přinášet problémy, viz například nefunkční automatická aktualizace.

    Ladislav Hagara | Komentářů: 0
    včera 21:00 | IT novinky

    Od 3. listopadu 2025 budou muset nová rozšíření Firefoxu specifikovat, zda shromažďují nebo sdílejí osobní údaje. Po všech rozšířeních to bude vyžadováno někdy v první polovině roku 2026. Tyto informace se zobrazí uživateli, když začne instalovat rozšíření, spolu s veškerými oprávněními, která rozšíření požaduje.

    Ladislav Hagara | Komentářů: 0
    včera 17:11 | Humor

    Jste nuceni pracovat s Linuxem? Chybí vám pohodlí, které vám poskytoval Microsoft, když vás špehoval a sledoval všechno, co děláte? Nebojte se. Recall for Linux vám vrátí všechny skvělé funkce Windows Recall, které vám chyběly.

    Ladislav Hagara | Komentářů: 1
    včera 16:11 | Komunita

    Společnost Fre(i)e Software oznámila, že má budget na práci na Debianu pro tablety s cílem jeho vyžívání pro vzdělávací účely. Jako uživatelské prostředí bude použito Lomiri.

    Ladislav Hagara | Komentářů: 1
    26.10. 17:11 | IT novinky

    Proběhla hackerská soutěž Pwn2Own Ireland 2025. Celkově bylo vyplaceno 1 024 750 dolarů za 73 unikátních zranitelností nultého dne (0-day). Vítězný Summoning Team si odnesl 187 500 dolarů. Shrnutí po jednotlivých dnech na blogu Zero Day Initiative (1. den, 2. den a 3. den) a na YouTube.

    Ladislav Hagara | Komentářů: 4
    26.10. 13:33 | Komunita

    Byl publikován říjnový přehled dění a novinek z vývoje Asahi Linuxu, tj. Linuxu pro Apple Silicon. Pracuje se na podpoře M3. Zanedlouho vyjde Fedora Asahi Remix 43. Vývojáře lze podpořit na Open Collective a GitHub Sponsors.

    Ladislav Hagara | Komentářů: 0
    25.10. 15:44 | Zajímavý software

    Iniciativa Open Device Partnership (ODP) nedávno představila projekt Patina. Jedná se o implementaci UEFI firmwaru v Rustu. Vývoj probíhá na GitHubu. Zdrojové kódy jsou k dispozici pod licencí Apache 2.0. Nejnovější verze Patiny je 13.0.0.

    Ladislav Hagara | Komentářů: 0
    25.10. 05:11 | Zajímavý článek

    Obrovská poptávka po plynových turbínách zapříčinila, že datová centra začala používat v generátorech dodávajících energii pro provoz AI staré dobré proudové letecké motory, konvertované na plyn. Jejich výhodou je, že jsou menší, lehčí a lépe udržovatelné než jejich průmyslové protějšky. Proto jsou ideální pro dočasné nebo mobilní použití.

    karkar | Komentářů: 10
    24.10. 19:55 | Nová verze

    Typst byl vydán ve verzi 0.14. Jedná se o rozšiřitelný značkovací jazyk a překladač pro vytváření dokumentů včetně odborných textů s matematickými vzorci, diagramy či bibliografií.

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

    openSUSE Build Service (OBS) - 2

    25. 6. 2008 | Mark Stopka | Návody | 2435×

    Výběr repozitářů, do kterých bude nově sestavený balíček přidán. Řešení závislostí a přebírání balíčků z repozitářů určených pro jiné distribuce.

    Přidáváme repozitáře, pro které chceme balíček sestavit

    Přidáme si tedy repozitáře, pro které chceme balíček sestavit. To můžeme udělat například pomocí osc -e prj home:m4r3k, přičemž se nám opět spustí $EDITOR. Do něj pak napíšeme kód podobný tomu následujícímu:

    <project name="home:m4r3k">
      <title<m4r3k's Home Project</title>
      <description>My packages :-).</description>
      <person role="maintainer" userid="m4r3k"/>
      <repository name="openSUSE_10.3">
        <path project="openSUSE:10.3" repository="standard"/>
        <arch>i586</arch>
        <arch>x86_64</arch>
      </repository>
    </project>
    

    Jak vidíte, tento soubor má poměrně složitou syntaxi (alespoň já si ji ne a ne zapamatovat :-)), naštěstí se však repozitáře dají přidat i pomocí webového rozhraní. Přihlásíme se tedy na build.opensuse.org, v našem domovském projektu klikneme na tlačítko Add Repository a vybereme si některý z repozítářů, pro které chceme sestavovat. V našem příkladu se jedná o repozitáře openSUSE 10.3, Fedora 8 a Mandriva 2008.

    opensuse buildservice - Webové rozhraní pro přídávání repozitářů

    Po přidání repozitářů se nám začnou sestavovat jednotlivé balíčky. Průběh sestavování si můžeme vypsat pomocí příkazu osc buildlog distribuce architektura, například tedy:

    osc buildlog openSUSE_10.3 i586

    Po nějaké době by nám měly vzniknout balíčky pro distribuce openSUSE, Fedora a Mandriva. Každá by měla obsahovat jeden textový soubor umístěný v adresáři /etc/ s příslušným jménem. To si můžeme zkontrolovat tak, že si sestavené balíčky stáhneme a pomocí rpm -qlp balíček.rpm necháme vypsat jejich obsah.

    for foo in *.rpm; do echo "balíček $foo obsahuje"; rpm -qlp $foo; echo "---"; done
    
    balíček fedora-testovaci-balik.rpm obsahuje
    warning: fedora-testovaci-balik.rpm: Header V3 DSA signature: NOKEY, key ID a575c4b8
    /etc/Fedora.txt
    ---
    balíček mandriva-testovaci-balik.rpm obsahuje
    warning: mandriva-testovaci-balik.rpm: Header V3 DSA signature: NOKEY, key ID a575c4b8
    /etc/Mandriva.txt
    ---
    balíček openSUSE-testovaci-balik.rpm obsahuje
    warning: openSUSE-testovaci-balik.rpm: Header V3 DSA signature: NOKEY, key ID a575c4b8
    /etc/openSUSE.txt
    ---
    

    Poněkud pokročilejší podmínky

    Mezi verzemi distribucí se často přejmenovávají, rozdělují a slučují balíčky. Proto je výhodné mít k dispozici i rozlišování podle verze jednotlivých distribucí. Například, pokud chceme, aby se nějaká část kódu provedla jen v případě, že jde o distribuci openSUSE a zároveň se jedná o verzi novější než 10.2, pak použijeme tento kód:

    %if 0%{?suse_version} > 1020
    	%patch0
    %endif

    Tabulka proměnných pro jednotlivé distribuce

    Distribution Variable
    openSUSE Factory %if 0%{?suse_version} == 1031
    openSUSE 10.3 %if 0%{?suse_version} == 1030
    openSUSE 10.2 %if 0%{?suse_version} == 1020
    SUSE Linux 10.1 %if 0%{?suse_version} == 1010
    SLE{S,D} 10 %if 0%{?sles_version} == 10
    SUSE Linux 10.0 %if 0%{?suse_version} == 1000
    SUSE Linux 9.3 %if 0%{?suse_version} == 930
    SLES 9 %if 0%{?sles_version} == 9
    CentOS 5 %if 0%{?centos_version} == 501
    RHEL 5 %if 0%{?rhel_version} == 501
    Fedora 8 %if 0%{?fedora_version} == 8
    Fedora 7 %if 0%{?fedora_version} == 7
    Fedora 6 with Extras %if 0%{?fedora_version} == 6
    Fedora 5 with Extras %if 0%{?fedora_version} == 5
    Fedora 4 with Extras %if 0%{?fedora_version} == 4
    Mandriva 2008 %if 0%{?mandriva_version} == 2008
    Mandriva 2007 %if 0%{?mandriva_version} == 2007
    Mandriva 2006 %if 0%{?mandriva_version} == 2006

    Tabulka převzata, upravena a aktualizována z en.opensuse.org.

    Porovnávací operátory nejsou samozřejmě omezeny jen na operátor ekvivalence (==), ale také jsou k dispozici operátory menší než (<) a větší než (>). Tyto operátory můžeme také skládat a sestavit tak operátor větší nebo rovno (>=), případně menší nebo rovno =<). Stejně tak můžeme také kombinovat jednotlivé podmínky a sestavit například následující konstrukci:

    %if 0%{?suse_version} || 0%{?sles_version}
     %patch1 -p1
    %endif

    Která provede makro %patch vždy, když je balíček sestavován v prostředí openSUSE nebo SLES(D). U sestavování balíčků se lze také rozhodovat podle architektury a tyto podmínky lze samozřejmě také kombinovat ve složitější celky. Například takto:

    %if 0%{?suse_version} == 1030
    %ifarch x86_64
     %patch1
    %endif
    %endif

    Makro %patch1 bude provedeno, jen když je balíček sestavován pro openSUSE verze 10.3 a cílová architektura je x86_64.

    Kde sehnat závislosti?!

    Často se stane, že si chcete udělat balíček na nový program a z ničeho nic zjistíte, že programů, na kterých tento program závisí, je obrovská spousta. To je ještě v pohodě, jednoduše je napíšete do BuildRequires nebo do Requires. V tom horším případě však zjistíte, že potřebné balíčky nejsou k dispozici v oficiálních stromech balíčků. Pokud máte štěstí, tak balíček který potřebujete, už vytvořil někdo jiný, kdo připravuje balíčky v rámci openSUSE Build Service. Pak máte několik možnosti, jak tyto balíčky zužitkovat. Můžete je zkopírovat do svého projektu pomocí příkazu osc copypac, který má následující syntaxi:

    osc copypac home:jiny-balikar cool-balicek home:m4r3k cool-balicek

    Což vytvoří identickou kopii balíčku u vás v home:m4r3k. To se hodí v případě, že hodláte balíček nějak významněji upravovat. Má to však tu nevýhodu, že zbytečně plýtváte strojový čas i místo na build serverech. Proto je k dispozici také příkaz osc linkpac, který provede nalinkování balíčku z jednoho projektu do jiného. Tam se balíček sestaví a bude k dispozici i pro váš projekt. Toto řešení také nabízí určitou míru volnosti. Pokud totiž ve svém nalinkovaném projektu vytvoříte soubor se stejným názvem jako je v tom původním, tak se použije ten váš. Můžete si tak třeba poupravit .spec soubor, aniž by se muselo udržovat několik kopií tarové koule se zdrojovými kódy.

    osc linkpac home:jiny-balikar cool-balicek home:m4r3k cool-balicek

    Vlastní .spec soubor vnutíte projektu tak, že si aktualizujete svou lokální kopii repozitáře pomocí příkazu osc up a přepnete se do adresáře s balíčkem (cd cool-balicek). Pak si vytvoříte třeba soubor cool-balicek.spec a v něm vlastní obsah. Častěji však využijete už hotový .spec soubor a jen si jej upravíte k obrazu svému. Stažení originálního souboru lze provést pomocí:

    osc co home:jiny-balikar cool-balicek cool-balicek.spec

    Nyní už stačí soubor jen otevřít ve svém oblíbeném editoru a dle libosti upravit. Soubor poté přidáme do projektu pomocí osc add cool-balicek.spec a výsledek pošleme na server pomocí osc commit. Balíček se nyní sestaví i s vašimi změnami. Tento způsob sice už tolik neplýtvá místem na disku, ale na druhou stranu stále plýtvá strojovým časem serverů. Proto je k dispozici i příkaz osc aggregatepac, který je vhodný v případě, že chceme balíček jen používat a nijak upravovat. Syntaxe je obdobná jako u předchozích příkazů.

    osc aggregatepac home:jiny-balikar cool-balicek home:m4r3k cool-balicek
    

    Stejně jakou u předchozích dvou příkazů, je i u tohoto příkazu poslední parametr cool-balicek nepovinný a v případě, že jej nepoužijete, tak se použije název stejný jako u zdrojového balíčku.

           

    Hodnocení: 100 %

            špatnédobré        

    Nástroje: Tisk bez diskuse

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

    Komentáře

    Vložit další komentář

    Ilfirin avatar 25.6.2008 11:09 Ilfirin | skóre: 32 | blog: ilfblog | Liberec
    Rozbalit Rozbalit vše Re: openSUSE Build Service (OBS) - 2
    Chtělo by to na ten osc nějaký GUI.
    Pavel Stárek avatar 25.6.2008 11:30 Pavel Stárek | skóre: 43 | blog: Tady bloguju já :-) | Kolín
    Rozbalit Rozbalit vše Re: openSUSE Build Service (OBS) - 2
    Celkem v pohodě se dá použít to webové rozhraní, ale asi v sobě nemá všechny možnosti.
    Kdo chce, hledá způsob; kdo nechce, hledá důvod.
    Ilfirin avatar 25.6.2008 11:31 Ilfirin | skóre: 32 | blog: ilfblog | Liberec
    Rozbalit Rozbalit vše Re: openSUSE Build Service (OBS) - 2
    Tady jde spíš o pohodlnost. Webové rozhraní je přece jen pomalé a ne moc pohodlné (moc dat tam a moc dat zpátky, odezvy, vykreslování browserem atd. )
    25.6.2008 12:19 Käyttäjä 11133 | skóre: 58 | blog: Ajattelee menneisyyttä
    Rozbalit Rozbalit vše Re: openSUSE Build Service (OBS) - 2
    Jenže žádné GUI nebude rychlejší, protože tohle je způsobeno pomalostí OBS API. Vyzkoušej si Yabsc a uvidíš, že to není řešení.
    Ilfirin avatar 25.6.2008 15:42 Ilfirin | skóre: 32 | blog: ilfblog | Liberec
    Rozbalit Rozbalit vše Re: openSUSE Build Service (OBS) - 2
    Nefunguje mi to :-( (Program běží, ale nic nedělá a plní konzoli chybovýma hláškama).
    25.6.2008 15:44 Käyttäjä 11133 | skóre: 58 | blog: Ajattelee menneisyyttä
    Rozbalit Rozbalit vše Re: openSUSE Build Service (OBS) - 2
    (Program běží, ale nic nedělá a plní konzoli chybovýma hláškama).
    Což mi bez těch hlášek vůbec nepomůže. :D
    Ilfirin avatar 25.6.2008 15:51 Ilfirin | skóre: 32 | blog: ilfblog | Liberec
    Rozbalit Rozbalit vše Re: openSUSE Build Service (OBS) - 2
    No, hlavní chybou je, že mě to nepozná :-). Všechny ostatní chyby se už jen od toho odvíjí (křik urllib).
    michals@smrz:~> yabsc
    user 'ilfirin' not found
    Traceback (most recent call last):
      File "/usr/bin/yabsc", line 597, in run
        self.projects = self.bs.getWatchedProjectList()
      File "/usr/bin/yabsc", line 101, in getWatchedProjectList
        tree = ElementTree.fromstring(''.join(core.get_user_meta(self.apiurl, username)))
    TypeError
    
    25.6.2008 15:55 Käyttäjä 11133 | skóre: 58 | blog: Ajattelee menneisyyttä
    Rozbalit Rozbalit vše Re: openSUSE Build Service (OBS) - 2
    Máš dobře nastavený konfigurák osc? Osc samotné ti funguje?
    Ilfirin avatar 25.6.2008 16:01 Ilfirin | skóre: 32 | blog: ilfblog | Liberec
    Rozbalit Rozbalit vše Re: openSUSE Build Service (OBS) - 2
    Ano. Ano.
    Yabsc neumí oscrc vytvořit (skončí s chybou dřív, než vůbec vykreslí GUI), to jsem musel udělat ručně. Pak teda už naběhne GUI, ale stále se to ke mě nezná.
    Ilfirin avatar 25.6.2008 11:22 Ilfirin | skóre: 32 | blog: ilfblog | Liberec
    Rozbalit Rozbalit vše Re: openSUSE Build Service (OBS) - 2
    Příloha:
    Mimochodem, osc funguje i ve Windows :-)
    25.6.2008 11:48 stick | skóre: 10 | Praha
    Rozbalit Rozbalit vše Re: openSUSE Build Service (OBS) - 2
    toto som prednedavnom riesil. ako to mas spravene? mas nainstalovany pod windowsami cely python aj s kniznicami alebo nejako cez cxFreeze?
    0118 999 881 999 119 725 3
    Ilfirin avatar 25.6.2008 12:24 Ilfirin | skóre: 32 | blog: ilfblog | Liberec
    Rozbalit Rozbalit vše Re: openSUSE Build Service (OBS) - 2
    Pouze Python. Ale vzhledem k tomu, že Python je můj koníček, tak jej považuji už za základ. Pak už jen stáhnout zdrojáky a pustit "python osc-wrapper". Trochu mě vystrašilo, že konfiguraci bude ukládat do .. a zvrtal ž v mém jméně. Ale nakonec to v tom adresáři opravdu je, takže to byla chyba jen v zobrazení.
    25.6.2008 15:20 stick | skóre: 10 | Praha
    Rozbalit Rozbalit vše Re: openSUSE Build Service (OBS) - 2
    Aha, ja som sa pokusal pomocou cxFreeze vyrobit binarku pre windows, aby sa user nemusel lopotit s celym pythonom, ale nakoniec som na niecom stroskotal. Uz si presne nepamatam. Kazdopadne by to bolo fajn, keby to slo ...
    0118 999 881 999 119 725 3
    Ilfirin avatar 25.6.2008 15:42 Ilfirin | skóre: 32 | blog: ilfblog | Liberec
    Rozbalit Rozbalit vše Re: openSUSE Build Service (OBS) - 2
    No, metoda s py2exe by snad zafungovat měla. Schválně zkusím.
    Ilfirin avatar 25.6.2008 16:09 Ilfirin | skóre: 32 | blog: ilfblog | Liberec
    Rozbalit Rozbalit vše Re: openSUSE Build Service (OBS) - 2
    No, vypadá to, že díky absenci rpm, build apod. to stejně na Windows fungovat nebude. Tak nic. PS.: Py2exe také nezafungoval.
    25.6.2008 16:16 Käyttäjä 11133 | skóre: 58 | blog: Ajattelee menneisyyttä
    Rozbalit Rozbalit vše Re: openSUSE Build Service (OBS) - 2
    No tyhle věci jsou potřeba jen k osc build, atd...
    26.6.2008 01:17 stick | skóre: 10 | Praha
    Rozbalit Rozbalit vše Re: openSUSE Build Service (OBS) - 2
    jojo presne na tom som skoncil ja. da sa to (rpm a podobne ...) zo zdrojakov vykuchat ale to sa mi uz nechcelo :)
    0118 999 881 999 119 725 3

    Založit nové vláknoNahoru

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