Nazdar! je open source počítačová hra běžící také na Linuxu. Zdrojové kódy jsou k dispozici na GitHubu. Autorem je Michal Škoula.
Po více než třech letech od vydání verze 1.4.0 byla vydána nová verze 1.5.0 správce balíčků GNU Guix a na něm postavené stejnojmenné distribuci GNU Guix. S init systémem a správcem služeb GNU Shepherd. S experimentální podporou jádra GNU Hurd. Na vývoji se podílelo 744 vývojářů. Přibylo 12 525 nových balíčků. Jejich aktuální počet je 30 011. Aktualizována byla také dokumentace.
Na adrese gravit.huan.cz se objevila prezentace minimalistického redakčního systému GravIT. CMS je napsaný ve FastAPI a charakterizuje se především rychlým načítáním a jednoduchým ukládáním obsahu do textových souborů se syntaxí Markdown a YAML místo klasické databáze. GravIT cílí na uživatele, kteří preferují CMS s nízkými nároky, snadným verzováním (např. přes Git) a možností jednoduchého rozšiřování pomocí modulů. Redakční
… více »Tým Qwen (Alibaba Cloud) uvolnil jako open-source své modely Qwen3‑TTS pro převádění textu na řeč. Sada obsahuje modely VoiceDesign (tvorba hlasu dle popisu), CustomVoice (stylizace) a Base (klonování hlasu). Modely podporují syntézu deseti různých jazyků (čeština a slovenština chybí). Stránka projektu na GitHubu, natrénované modely jsou dostupné na Hugging Face. Distribuováno pod licencí Apache‑2.0.
Svobodný citační manažer Zotero (Wikipedie, GitHub) byl vydán v nové major verzi 8. Přehled novinek v příspěvku na blogu.
Byla vydána verze 1.93.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.
Svobodný operační systém ReactOS (Wikipedie), jehož cílem je kompletní binární kompatibilita s aplikacemi a ovladači pro Windows, slaví 30. narozeniny.
Společnost Raspberry Pi má nově v nabídce flash disky Raspberry Pi Flash Drive: 128 GB za 30 dolarů a 256 GB za 55 dolarů.
Technologie Skip pro multiplatformní mobilní vývoj, která umožňuje vývojářům vytvářet iOS a Android aplikace z jediné Swift a SwiftUI kódové základny, se s vydáním verze 1.7 stala open source.
Na GitHubu byl zveřejněn algoritmus "Pro vás" sociální sítě 𝕏.
# tar -c -T $seznam | bzip2 -9 >$sambacesta`date +%y_%m_%d`'.tar.bz2' && echo "Backup Done" || "Backup Failed"Proč toto nemůže fungovat? Díky
bzip2.
tar -c -T $seznam | bzip2 -9 >$sambacesta`date +%y_%m_%d`'.tar.bz2' && echo "Backup Done" || echo "Backup Failed"Ale ani to nebude fungovat na návratovou hodnotu taru, protože se uvažuje vždy poslední návratová hodnota v koloně - v tomhle případě bzipu.
tar -cjvf -T $seznam soubor.tar.bz2 && echo "Backup Done" || echo "Backup Failed"Něco mi řiká, že tam je chyba v těch parametrech, že?
seznam=/home/user/list tar -cjvf soubor.tar.bz2 -T $seznam && echo "Backup Done" || echo "Backup Failed"Toto ovšem taky nefunguje :D
/home/user/list, ale v rámci možností to u mě vypadá funkční.
seznam=/home/user/list
tar -cjvf soubor.tar.bz2 -T $seznam && echo "Backup Done" || echo "Backup Failed"
if [[ $? -eq 0 ]]
then
rob_nieco
else
rob_nieco_ine_ked_sa_to_nepodarilo
fi
#! /bin/bash
seznam=/home/user/list
VytvorArchiv(){
# Echo vracia VZDY true, takze ak prebehne uspesne vytvorenie archivu, tak nie je nutne nic robit.
tar -cjvf soubor.tar.bz2 -T "${1}" && echo "Backup Done" || ( echo "Backup Failed"; return 1 )
}
if VytvorArchiv "${seznam}"
then
rob_nieco
else
rob_nieco_ine_ked_sa_to_nepodarilo
fi
Takto by to malo fungovat. Ale ak je to tento pripad, tak je to jednoznacne chyba zadavatela, kedze neposkytol dostatok informacii. ;)
&& || funguje podle očekávání:
~> true && echo ok || echo fail ok ~> false && echo ok || echo fail fail
Aj mne. Mozno som sa len nedostatocne vyjadril. Ale taketo nieco nefunguje a to je jediny pre mna zjavny dovod, preco by to zadavatelovi "nefungovalo":
patrik@debian-thinkpad:~$ true && echo ok || echo fail; [[ $? -eq 0 ]] && echo ok ok ok patrik@debian-thinkpad:~$ false && echo ok || echo fail; [[ $? -eq 0 ]] && echo ok fail ok
Ja len vravim, ze nemoze pouzit nieco taketo a vraviet, ze tar vracia nespravnu navratovu hodnotu:
#! /bin/bash true && echo ok || echo fail if [[ $? -eq 0 ]]; then rob_nieco; else rob_nieco_ine; fi
Takto to totiz nebude nikdy fungovat skrz pouzitia echo, ktory ma vzdy navratovu hodnotu 0 a teda maskuje navratovu hodnotu true resp. akehokolvek prikazu pred echo-m v kolone. Da sa to vsak vyriesit napr. aj nasledovne:
#! /bin/bash
Funkcia(){
true && echo ok || ( echo fail; return 1 )
}
if funkcia; then rob_nieco; else rob_nieco_ine; fi
To je podla mojho nazoru dovod, preco tu zakladatel stale tvrdi, ze mu tar nevracia spravnu navratovu hodnotu. A to je zaroven aj pointa mojho predchadzajuceho prispevku.
tar && echo || echo
To co kolegové řešili ohledně návratové hodnoty v koloně byl problém tar | bzip && echo || echo, kde tar a bzip jsou v koloně tar | bzip a následné příkazy echo se řídí návratovou hodnotou bzipu, nikoliv taru.
tar && echo || echo
není kolona (v obvyklém smyslu slova, tak byste to tedy nazývat neměl, pokud nejste z Babylonu. Před echome tedy nic v koloně není), je to sled příkazů, po jejich provedení je k dispozici návratová hodnota posledního znich (jedno z ech), jak jste správně řekl.
Další věc je, že konstrukce A && B || Cje ve skutečnosti
if (A && B) then B; else C; fi, ale v případě přikazů jako echo se to zanedbává, neb většinou fungují.
Nereagoval som na temu po tento prispevok: https://www.abclinuxu.cz/poradna/linux/show/336497#6
To bol dovod a myslim, ze stale je dovodom, preco som vyvodil z toho zaver, aky som vyvodil a myslim, ze pravom som sa domnieval, ze tam nasleduje kontrola v dalsom kode na navratovu hodnotu. Ale pockajme si na zakladatela temy.
Co sa tyka kolony, z Babylonu nie som. :) Popravde som sa nad vyznamom slova nezamyslal az natolko. Viac som sa snazil tu udrzat nejake jednotne nazvoslovie, ktore Jenda nastolil. Jenda ho vsak pouzil spravne, teda pokial tu budeme sledovat vase vysvetlenie ohladne kolony ( logicke vysvetlenie ), pretoze on spominal aj bzip v case pisania toho jeho prispevku. Inak by som temer isto pouzil sled prikazov pred kolonou.
Takze cele moje posobenie v tejto teme nie je o tom, ci vracia tar spravnu navratovu hodnotu alebo nie, kedze je jasne, ze vracia spravnu. Ale o implementacii kodu do nejakeho vacsieho celku a k tejto teorii mi nahrava prave vyssie zmienovany odkaz.
Další věc je, že konstrukceNe, to není, protože to druhé by ve skutečnosti (pokud by vše končilo úspěchem) udělalo ABB či ABC (pokud by končilo neúspěchem), zatímco první udělá jen AB, případně AC.A && B || Cje ve skutečnostiif (A && B) then B; else C; fi, ale v případě přikazů jako echo se to zanedbává, neb většinou fungují.
if (A && B) then :; else C; ficož je sice přesnější, ale zase ne tak srozumitelné. Podstatné na co jsem chtěl upozornit je, že výpis C závisí na pozitivní návratové hodnotě B, k čemuž u
if-A-then-B-else-C nedochází. U echa je to jedno, ale někdo by třeba dokázal napsat i (pseudokód:)
rar && rm .lock || touch .rar-failedcož už může vytvořit .rar-failed i v případě, že rar proběhne ok.
PIPESTATUS.
bash$ true | false | true
bash$ echo ${PIPESTATUS[1]}
1 # to je to false
tar -cjf foo.tar.bz2 bar/NN
Tiskni
Sdílej: