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

    Od soboty do úterý probíhá v Hamburku konference 39C3 (Chaos Communication Congress) věnovaná také počítačové bezpečnosti nebo hardwaru. Program (jiná verze) slibuje řadu zajímavých přednášek. Streamy a záznamy budou k dispozici na media.ccc.de.

    Ladislav Hagara | Komentářů: 0
    dnes 13:22 | Zajímavý software

    Byl představen nový Xserver Phoenix, kompletně od nuly vyvíjený v programovacím jazyce Zig. Projekt Phoenix si klade za cíl být moderní alternativou k X.Org serveru.

    🇨🇽 | Komentářů: 1
    dnes 13:11 | Nová verze

    XLibre Xserver byl 21. prosince vydán ve verzi 25.1.0, 'winter solstice release'. Od založení tohoto forku X.Org serveru se jedná o vůbec první novou minor verzi (inkrementovalo se to druhé číslo v číselném kódu verze).

    🇨🇽 | Komentářů: 0
    dnes 03:33 | Nová verze

    Wayback byl vydán ve verzi 0.3. Wayback je "tak akorát Waylandu, aby fungoval Xwayland". Jedná se o kompatibilní vrstvu umožňující běh plnohodnotných X11 desktopových prostředí s využitím komponent z Waylandu. Cílem je nakonec nahradit klasický server X.Org, a tím snížit zátěž údržby aplikací X11.

    Ladislav Hagara | Komentářů: 0
    včera 14:44 | Nová verze

    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.

    Ladislav Hagara | Komentářů: 0
    24.12. 02:11 | Komunita

    Všem čtenářkám a čtenářům AbcLinuxu krásné Vánoce.

    Ladislav Hagara | Komentářů: 26
    24.12. 02:00 | Nová verze

    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.

    Ladislav Hagara | Komentářů: 0
    23.12. 18:33 | Nová verze

    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.

    Ladislav Hagara | Komentářů: 0
    23.12. 13:55 | Nová verze

    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ší.

    Ladislav Hagara | Komentářů: 0
    23.12. 12:44 | Nová verze

    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.

    Ladislav Hagara | Komentářů: 0
    Kdo vám letos nadělí dárek?
     (34%)
     (2%)
     (14%)
     (2%)
     (2%)
     (2%)
     (16%)
     (17%)
     (11%)
    Celkem 106 hlasů
     Komentářů: 18, poslední 24.12. 15:29
    Rozcestník

    Dotaz: Distribuce python modulů a submodulů

    Bystroushaak avatar 14.11.2012 23:29 Bystroushaak | skóre: 36 | blog: Bystroushaakův blog | Praha
    Distribuce python modulů a submodulů
    Přečteno: 226×
    Řeším takový problém spíše filosofického rázu. Napsal jsem pár modulů (S), které mám na githubu jako projekty. Na těchto modulech jsem nyní založil další moduly (M) a na těchto modulech budou založeny aplikace (A).

    Mám tedy schéma:
        A
       / \
      M   M
     / \ / \
    S   S   S
    Distribuce S je jasná, prostě mají vlastní projekt na githubu, v něm vlastní dokumentaci a tak dále. U distribuce M můj problém začíná - měly by být distribuovány s S, nebo bez nich? A co A?

    Má na tohle python nějaký postup? Zatím jsem to řešil takto:
    try:
    	import socks
    except ImportError, e:
    	sys.stderr.write("I do require sock module. You can get it from\n")
    	sys.stderr.write("http://socksipy.sourceforge.net/\n")
    	raise e
    V jednom speciálním případě takto:
    try:
    	from timeout import timeout
    except ImportError, e:
    	import base64, zlib
    
    	f = open("timeout.py", "w")
    	f.write(zlib.decompress(base64.b64decode("""eJx9UsFOhDAQvfcrxnCBzbKYPRmMBw/G
    mOhFvW8qtNCktKSdbuTvLUvZUDDby3Rm3kzfe5DcFc6a4keogqkz9AO2WpEE8l0Ola6FakpwyPOHsUIS
    36kMqwU+QovYl0XRN07UzB4Uw2KaztGhNoLKay46ph3mNOdOVSi0Kojoem0Q7GCvV9EoKgmQSlJr4Xsa
    evmtWD+OpNdbVgIBf/oR5vE14xCeSEM8jXEPvkOdxKy84Be400wk5aE5A/gx3VHT2EV5PdtSVUtm0pGw
    6/bADe3YCj8eQ4VlWx0ZgQiqZT2vhKfgwmEKaci+3l6f3z8/9msKWbwpoKmkpoucyCABNKLxL1yaIBQs
    +2BZpVVto21ohhK2ohieqfREefApQrCLyo3mf7xh6IyaP1DU5sKLkMN25rY1Cxtv2XIfEw48JlVkVeVH
    ssjWv84fYU34lA==""")))
    	f.close()
    
    	try:
    		from timeout import timeout
    	except ImportError, e:
    		sys.stderr.write("Lol, you are fucked. Read only medium? SRSLY?\n")
    		raise e
    Očividné řešení by bylo tam moduly prostě nakopírovat a distribuovat to i s nimi, jenže tím se připravím o updaty a bugfixy. Package v distribuci z nich dělat nehodlám, protože pochybuji, že je používá i někdo jiný než já, navíc by mě to omezilo na jeden jediný OS a prostě se mi to zdá jako zbytečně komplikované řešení.

    Jak podobné problémy řešíte vy?

    <naivní otázka>Neexistuje cosi jako online úložiště balíčků, kam bych specifikoval co se má stáhnout a ono to stáhne a do systému doinstaluje? Nějaký způsob loadování a cacheování modulů z netu?</naivní otázka>

    Řešení dotazu:


    Odpovědi

    15.11.2012 01:10 chrono
    Rozbalit Rozbalit vše Re: Distribuce python modulů a submodulů
    Ak M/A bude potrebovať nejakú špeciálnu verziu S/M, tak bude asi najrozumnejšie použiť submoduly v git (alebo niečo podobné).

    Inak sa dá použiť setuptools alebo pip v kombinácii so stránkou PyPI, prípadne s vlastnou stránkou. Ak je potom balíček na stránke PyPI, stačí pri jeho inštalovaní poznať názov. Ak je niekde inde, dá sa napr. použiť odkaz na súbor.

    PS: Balíčky s python knižnicami, ktoré sa budú inštalovať pomocou setuptools alebo pip, obsahujú aj závislosti, ktoré sa potom tiež nainštalujú.
    15.11.2012 01:13 chrono
    Rozbalit Rozbalit vše Re: Distribuce python modulů a submodulů
    A ešte som zabudol na to, že pip vie inštalovať priamo z git repozitára (a zdá sa mi, že aj k setuptools existuje taká možnosť).
    Bystroushaak avatar 15.11.2012 08:55 Bystroushaak | skóre: 36 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Distribuce python modulů a submodulů
    pip znám, jenže to nefunguje tak úplně jak bych chtěl a je to jen o krok lepší než říct uživateli "tohle si (nějak) nainstaluj", protože mu říkáš "tohle nainstaluj takhle". Lepší by pro mě byl nějaký automatický způsob.
    15.11.2012 10:04 chrono
    Rozbalit Rozbalit vše Re: Distribuce python modulů a submodulů
    Nič viac automatické asi neexistuje, pretože napr. kam by sa to malo inštalovať?

    Aplikácie, ktoré používam to zvyčajne riešia tak, že:
    • je uvedený iba zoznam závislostí
    • je uvedený zoznam závislostí aj s popisom, ako ich nainštalovať (napr. pomocou pip)
    • aplikácia obsahuje súbor, v ktorom sú vypísané všetky závislosti (a ten súbor sa potom použije spolu s pip, aby sa to všetko nainštalovalo)
    Každopádne aktualizácie modulov sa zvyčajne nijako neriešia a vyžadujú zásah používateľa, takže nevidím veľký problém v tom, aby používateľ nainštaloval moduly pri inštalovaní aplikácie (prípadne môže celú aplikáciu nainštalovať pomocou pip).

    A ak to naozaj musí byť automatické, tak je asi najjednoduchšie pridať všetky moduly priamo k aplikácii. Síce sa tým príde o samostatné aktualizácie modulov, ale ak sa tie moduly neaktualizujú automaticky, používateľ to aj tak pravdepodobne robiť nebude. :)

    Založit nové vláknoNahoru

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

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