plwm je nový, poměrně minimalistický správce oken pro X11. Podporuje dynamické dláždění okny, plochy, pravidla pro okna atd. Zvláštností je, že je napsaný v logickém programovacím jazyce Prolog. Používá implementaci SWI-Prolog.
Na čem aktuálně pracují vývojáři GNOME a KDE Plasma? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE Plasma.
Sean Heelan se na svém blogu rozepsal o tom, jak pomocí OpenAI o3 nalezl vzdálenou zranitelnost nultého dne CVE-2025-37899 v Linuxu v implementaci SMB.
Jiří Eischmann v příspěvku na svém blogu představuje typy, jak lépe chránit své soukromí na mobilním telefonu: "Asi dnes neexistuje způsob, jak se sledování vyhnout úplně. Minimálně ne způsob, který by byl kompatibilní s tím, jak lidé technologie běžně používají. Soukromí ovšem není binární věc, ale škála. Absolutního soukromí je dnes na Internetu dost dobře nedosažitelné, ale jen posun na škále blíže k němu se počítá. Čím méně dat se o vás posbírá, tím nepřesnější budou vaše profily a tím méně budou zneužitelné proti vám."
Byla vydána nová stabilní verze 25.05 linuxové distribuce NixOS (Wikipedie). Její kódové označení je Warbler. Podrobný přehled novinek v poznámkách k vydání. O balíčky se v NixOS stará správce balíčků Nix.
Multiplatformní open source spouštěč her Heroic Games Launcher byl vydán v nové stabilní verzi 2.17.0 Franky (Mastodon, 𝕏). Přehled novinek na GitHubu. Instalovat lze také z Flathubu.
Organizace Apache Software Foundation (ASF) vydala verzi 26 integrovaného vývojového prostředí a vývojové platformy napsané v Javě NetBeans (Wikipedie). Přehled novinek na GitHubu. Instalovat lze také ze Snapcraftu a Flathubu.
Klávesnice IBM Enhanced Keyboard, známá také jako Model M, byla poprvé představena v roce 1985, tzn. před 40 lety, s počítači IBM 7531/7532 Industrial Computer a 3161/3163 ASCII Display Station. Výročí připomíná článek na zevrubném sběratelském webu Admiral Shark's Keyboards. Rozložení kláves IBM Enhanced Keyboard se stalo průmyslovým standardem.
Vyšlo Pharo 13 s vylepšenou podporou HiDPI či objektovým Transcriptem. Pharo je programovací jazyk a vývojové prostředí s řadou pokročilých vlastností.
Java má dnes 30. narozeniny. Veřejnosti byla představena 23. května 1995.
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.