Byla vydána nová major verze 5.0.0 svobodného multiplatformního nástroje BleachBit (GitHub, Wikipedie) určeného především k efektivnímu čištění disku od nepotřebných souborů.
Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za duben (YouTube).
Provozovatel čínské sociální sítě TikTok dostal v Evropské unii pokutu 530 milionů eur (13,2 miliardy Kč) za nedostatky při ochraně osobních údajů. Ve svém oznámení to dnes uvedla irská Komise pro ochranu údajů (DPC), která jedná jménem EU. Zároveň TikToku nařídila, že pokud správu dat neuvede do šesti měsíců do souladu s požadavky, musí přestat posílat data o unijních uživatelích do Číny. TikTok uvedl, že se proti rozhodnutí odvolá.
Společnost JetBrains uvolnila Mellum, tj. svůj velký jazykový model (LLM) pro vývojáře, jako open source. Mellum podporuje programovací jazyky Java, Kotlin, Python, Go, PHP, C, C++, C#, JavaScript, TypeScript, CSS, HTML, Rust a Ruby.
Vývojáři Kali Linuxu upozorňují na nový klíč pro podepisování balíčků. K původnímu klíči ztratili přístup.
V březnu loňského roku přestal být Redis svobodný. Společnost Redis Labs jej přelicencovala z licence BSD na nesvobodné licence Redis Source Available License (RSALv2) a Server Side Public License (SSPLv1). Hned o pár dní později vznikly svobodné forky Redisu s názvy Valkey a Redict. Dnes bylo oznámeno, že Redis je opět svobodný. S nejnovější verzí 8 je k dispozici také pod licencí AGPLv3.
Oficiální ceny Raspberry Pi Compute Modulů 4 klesly o 5 dolarů (4 GB varianty), respektive o 10 dolarů (8 GB varianty).
Byla vydána beta verze openSUSE Leap 16. Ve výchozím nastavení s novým instalátorem Agama.
Devadesátková hra Brány Skeldalu prošla portací a je dostupná na platformě Steam. Vyšel i parádní blog autora o portaci na moderní systémy a platformy včetně Linuxu.
Lidi dělají divné věci. Například spouští Linux v Excelu. Využít je emulátor RISC-V mini-rv32ima sestavený jako knihovna DLL, která je volaná z makra VBA (Visual Basic for Applications).
ccache
a distcc
.ccache
dokáže zrýchliť opakované kompilovanie 5 až 10krát.
Je výtvorom Andrewa Tridgella z projektu Samba, ktorý sa inšpiroval ideou
projektu compilercache.
Pred každým spustením gcc
sa ccache
pozrie do
svojej databázy a pokúsi sa v nej nájsť skompilovaný súbor. Ak výsledok
kompilácie nenájde, spustí gcc
a jeho výsledok vloží do
databázy. Pri vývoji aplikácií sa medzi dvoma verziami aplikácie často mení
iba zopár súborov a ostatné zostávajú nedotknuté. Pri kompilovaní novšej
verzie už raz kompilovaného programu má ccache
veľkú šancu
usporiť čas potrebný pre kompiláciu už raz skompilovaných súborov.
Portage dokáže ccache
používať automaticky. Stačí ho len
nainštalovať:
# emerge ccache
a pridať do súboru /etc/make.conf
do premennej
FEATURES
:
FEATURES="ccache"
Ak chcete ccache
používať mimo Portage (v inej distribúcii
alebo pri programovaní), musíte dať cestu k binárkam ccache
do
premennej prostredia PATH
(pred cestou ku
gcc
):
# export PATH=/usr/lib/ccache/bin:$PATH
Databáza ccache
bude rásť a rásť, preto je dobré stanoviť
jej nejaký limit:
# ccache -M 1G
Používatelia Gentoo si tento údaj môžu nastaviť aj v súbore
/etc/make.conf
:
CCACHE_SIZE="1G"
Z dielne Samby pochádza aj program distcc
, tentokrát je
jeho autorom Martin Pool. Distcc distribuuje kompiláciu medzi viacerými
počítačmi. To sa oplatí hlavne, pokiaľ chcete inštalovať Gentoo na pomalý
počítač a máte k dispozícii jeden, alebo viac rýchlejších strojov.
Program distcc
najprv spracuje vstupný zdrojový súbor preprocesorom
(gcc -E
). Vznikne tak zdrojový súbor, ktorý obsahuje
všetky hlavičkové súbory, ktoré sú potrebné na jeho skompilovanie. Program
distcc
tento súbor pošle na niektorý zo vzdialených počítačov,
kde sa spustí kompilácia. Skompilovaný súbor s príponou .o
(object), sa vráti späť na klientsky počítač a distcc
sa ukončí.
Aby tento postup kompiláciu urýchlil, musí byť kompilovaných
viacero zdrojových súborov naraz. Program make
podporuje paralelnú
kompiláciu. Počet súčasne spustených kompilácií sa nastavuje parametrom
-jN
(N - počet paralelných kompilácií). Používatelia
Gentoo si tento parameter môžu nastaviť v súbore
/etc/make.conf
:
MAKEOPTS="-j2"
S počtom paralelných kompilácií sa musíte trochu pohrať. Začať môžete s
hodnotou rovnou počtu procesorov na kompilovanie plus jeden (napríklad ak
kompilujete na dvoch dvoj-procesorových počítačoch nastavte
MAKEOPTS="-j5"
). Tento počet vám pomôže doladiť grafický
monitor distccmon-gui
.
Distcc treba samozrejme nainštalovať, v Gentoo jednoducho:
# emerge distcc
Portage vie používať distcc
automaticky, len ho musíte
pridať do súboru /etc/make.conf
do premennej FEATURES:
FEATURES="distcc"
Ak nepoužívate Gentoo, musíte si binárky distcc
pridať do
premennej PATH
ešte pred cestou ku gcc
. Ale
pozor, ak používate aj ccache
, najprv musí ísť cesta k
ccache
, potom k distcc
a až potom všetko
ostatné:
# export
PATH=/usr/lib/ccache/bin:/usr/lib/distcc/bin:$PATH
Na vzdialených počítačoch musíte buď spustiť démona
distccd
, nakonfigurovať initd
server alebo
sprístupniť počítač cez ssh
. Odporúčané je spustiť démona
distccd
:
# distccd --allow 192.168.1.0/24
Používatelia Gentoo budú mať po inštalácii k dispozícii rc skript:
# rc-update add distccd default
# /etc/init.d/distccd start
Parameter --allow
je veľmi dôležitý. Určuje, ktoré IP
adresy budú mať prístup k distccd
serveru. Používatelia Gentoo
si tento a ďalšie parametre distcc
môžu nastaviť v súbore
/etc/conf.d/distccd
.
Nakoniec na klientskom počítači nastavte zoznam a limity pre vzdialené
servery. To sa robí pomocou premennej
prostredia DISTCC_HOSTS
:
# export DISTCC_HOSTS="localhost/2 192.168.1.1/2 superserver.com/8"
V Gentoo použite konfiguračný nástroj distcc-config
:
# distcc-config --set-hosts "localhost/2 192.168.1.1/2 \
superserver.com/8"
# env-update
# source /etc/profile
Ešte musím upozorniť, že ccache
je citlivý na to, či
používate distcc
alebo nie. Ak ste prvú verziu kompilovali
distribuovane a pri kompilácii novej verzie už nemáte k dispozícii viac
počítačov a distcc
vymažete za súboru
/etc/make.conf
, ccache
si bude myslieť, že ste
zmenili verziu gcc
a medzivýsledky kompilácie vo svojej
databáze jednoducho nenájde.
Ak hrozí, že nebudete môcť kompilovať na viacerých počítačoch pomocou
distcc
, je lepšie distcc
do súboru
/etc/make.conf
nedávať a spúšťať distribuované kompilovanie
nasledovne:
# FEATURES="distcc" emerge parametre
Nástroje: Tisk bez diskuse
Tiskni
Sdílej:
- ma centralni scheduler, takze na rozdil od distcc rozdeluje ulohy na jine pocitace inteligentne (nepouziva zatizene pocitace, snazi se pouzivat nejrychlejsi nejdrive, sam hleda ostatni pocitace,...)
- dokaze jednoduse mixovat ruzne druhy gcc a pocitacu (mit treba i686+gcc-3.x a nechat si prekladat na amd64+gcc-4.x neni problem)
slon ~ # emerge -pv sys-devel/icecream These are the packages that I would merge, in order: Calculating dependencies !!! All ebuilds that could satisfy "sys-devel/icecream" have been masked. !!! One of the following masked packages is required to complete your request: - sys-devel/icecream-0.6.20040829 (masked by: ~x86 keyword) For more information, see MASKED PACKAGES section in the emerge man page or refer to the Gentoo Handbook.
Limit ccache nastaveny pres `ccache -M 1G` *neovlivni* Portage, protoze Portage pouziva jiny $CCACHE_DIR nez root (defaultne je to "~/.ccache" iirc). Reseni je pri *kazdem* spusteni cehokoliv, co saha na ccache, at uz velikosti cache nebo monitory, nastavit spravnou $CCACHE_DIR (nekde pod /var/portage asi, nevim, nepouzivam, jsem liny zjistovat). Jinak u "distcc" je dobry zminit, ze se ma pouzivat jenom tehdy, pokud bychom uzivatelum kompilujicim z danych klientu poskytli na dalsich distcc nodech shell access, viz http://distcc.samba.org/security.html : "Anyone who can connect to the distcc server port can run arbitrary commands on that machine as the distccd user. If you are not using SSH, you must use the --allow rule and/or firewall rules to limit access to port 3632." Dale mi neni jasne, co autor minil doporucenim pouzivat `FEATURES="distcc" emerge foo` misto adekvatni zmeny make.conf, zejmena v kontextu predchoziho odstavce.