Byla vydána nová verze 15.0 svobodného unixového operačního systému FreeBSD. Podrobný přehled novinek v poznámkách k vydání.
UBports, nadace a komunita kolem Ubuntu pro telefony a tablety Ubuntu Touch, vydala Ubuntu Touch 24.04 1.1 a 20.04 OTA-11. Vedle oprav chyb a drobných vylepšení je řešen také středně závažný bezpečnostní problém.
I letos vyšla řada ajťáckých adventních kalendářů: Advent of Code 2025, Perl Advent Calendar 2025, CSS Advent Calendar 2025, Advent of A11Y 2025, Advent of AI Security 2025, Advent of Agents (in Google) 2025, Advent of Svelte 2025, …
Fedora zve na dvoudenní testování (2. a 3. prosince), během kterého si můžete vyzkoušet nové webové uživatelské rozhraní (WebUI) projektu FreeIPA. Pomozte vychytat veškeré chyby a vylepšit uživatelskou zkušenost ještě předtím, než se tato verze dostane k uživatelům Fedory a celého linuxového ekosystému.
Eben Upton oznámil zdražení počítačů Raspberry Pi, kvůli růstu cen pamětí, a představil 1GB verzi Raspberry Pi 5 za 45 dolarů.
Linus Torvalds na YouTube kanálu Linus Tech Tips staví dokonalý linuxový počítač.
Po 9 týdnech vývoje od vydání Linuxu 6.17 oznámil Linus Torvalds vydání Linuxu 6.18. Přehled novinek a vylepšení na LWN.net: první a druhá polovina začleňovacího okna a Linux Kernel Newbies. Vypíchnout lze například podporu protokolu PSP (PSP Security Protocol, PSP encryption of TCP connections).
Byla vydána nová stabilní verze 25.11 linuxové distribuce NixOS (Wikipedie). Její kódové označení je Xantusia. Podrobný přehled novinek v poznámkách k vydání. O balíčky se v NixOS stará správce balíčků Nix.
Richard Hughes na Mastodonu oznámil, že se společnost Framework Computer stala sponzorem služby LVFS (Linux Vendor Firmware Service) umožňující aktualizovat firmware zařízení na počítačích s Linuxem.
Jak na webu co nejšíleněji zadávat datum? Jak to uživatelům co nejvíce znepříjemnit? V Bad UX World Cup 2025 (YouTube) se vybíraly ty nejšílenější UX návrhy. Vítězným návrhem se stal Perfect Date.
... DISTNAME = freetype-2.6.2 ... SUBST_FILES.unpatented+= include/freetype/config/ftoption.h SUBST_SED.unpatented= -e 's!.*\#define TT_CONFIG_OPTION_BYTECODE_INTERPRETER.*!\/* \#define TT_CONFIG_OPTION_BYTECODE_INTERPRETER *\/!g' SUBST_SED.unpatented+= -e 's!.*\#define TT_CONFIG_OPTION_UNPATENTED_HINTING.*!\#define TT_CONFIG_OPTION_UNPATENTED_HINTING!g' SUBST_SED.unpatented+= -e 's!.*\#define FT_CONFIG_OPTION_SUBPIXEL_RENDERING.*!\#define FT_CONFIG_OPTION_SUBPIXEL_RENDERING!g' SUBST_STAGE.unpatented+= pre-configure SUBST_CLASSES += unpatentedBohužel proti verzi 2.6.2 nejde přímo aplikovat patches/patch-ab; je potřeba změnit následující v patch souboru
- -export-symbols $(EXPORTS_LIST) + # -export-symbols $(EXPORTS_LIST)na
# -export-symbols $(EXPORTS_LIST)
bmake mdi bmake install bmake print-PLIST > PLIST bmake update # nebo bmake replaceTeď už freetype v prefixu renderuje na první pohled stejně jako v systému. Voil...shit! Stále tam jsou drobné rozdíly v renderování! Takže nezbývá než postupný "bisect", nejdříve na úrovni verzí, pak na úrovni gitu (i tohle jde dát dokupy s pkgsrc) ... a viníkem je b0962ac34 (mezi verzemi 2.4.5 a 2.4.6). Dokonce nejsem první kdo si na tuhle změnu stěžuje. Naštěstí se jedná doslova o one-liner, takže přidat patch do graphics/freetype2 už je detail, a nebo klidně přímo do Makefile:
SUBST_FILES.revert_b0962ac34 += src/truetype/ttdriver.c SUBST_SED.revert_b0962ac34= -e 's!.*ttsize->root.metrics = ttsize->metrics;!!g' SUBST_STAGE.revert_b0962ac34= pre-configure SUBST_CLASSES += revert_b0962ac34Každopádně si ale správci a vývojáři freetype zaslouží respekt; už jen co se týká ABI/API kompatibility, kterou freetype dodržuje snad více než 10 let.
-- Check for working CXX compiler: /pkgsrc/devel/googletest/work/.cwrapper/bin/c++ -- broken CMake Error at /prefix/share/cmake-3.7/Modules/CMakeTestCXXCompiler.cmake:44 (message): The C++ compiler "/pkgsrc/devel/googletest/work/.cwrapper/bin/c++" is not able to compile a simple test program. It fails with the following output: Change Dir: /pkgsrc/devel/googletest/work/googletest-release-1.8.0/CMakeFiles/CMakeTmpTento problém jsem vyřešil nejškareději jak to jen jde a připravil si alias fixmagic_gcc48, kterým podle potřeby vynutím gcc48:
alias fixmagic_gcc48="export PATH=/prefix/gcc48/bin:\$PATH;
export LD_LIBRARY_PATH=/prefix/gcc48/lib64:/prefix/gcc48/lib/gcc/x86_64-redhat-linux/4.8.5:\$LD_LIBRARY_PATH;
export PS1=\"(gcc48) \$PS1\""
alias fixmagicbuild_firefox="export LDFLAGS=\"-ldl -lrt\";
export CPPFLAGS=\"-DLIBYUV_DISABLE_X86\""
alias compiz="rm -f /prefix/lib/libGL.*
cd $HOME
unset LD_LIBRARY_PATH
/lib64/ld-linux-x86-64.so.2 --library-path /prefix/gcc48/lib64:/prefix/lib /prefix/bin/compiz --replace ccp
"
Ano, opravdu tam je rm -f /prefix/lib/libGL.*. Také compiz nepouštím z "naloadovaného" prefixu ale přes /lib64/ld-linux-x86-64.so.2 --library-path, díky tomu programy puštěné z compizu neběží implicitně v prefixu.
alias magic="export __OLD_PRE_MAGIC_PATH=\$PATH;
export __OLD_PRE_MAGIC_MANPATH=\$MANPATH;
export __OLD_PRE_MAGIC_PS1=\$PS1;
export __OLD_PRE_MAGIC_PYTHONPATH=\$PYTHONPATH;
export __OLD_PRE_MAGIC_GEM_HOME=\$GEM_HOME;
export __OLD_PRE_MAGIC_LD_LIBRARY_PATH=\$LD_LIBRARY_PATH;
export __OLD_PRE_MAGIC_LDFLAGS=\$LDFLAGS;
export __OLD_PRE_MAGIC_CPPFLAGS=\$CPPFLAGS;
export PATH=/prefix/bin:/prefix/sbin:\$PATH;
export MANPATH=/prefix/man:\$MANPATH;
export PS1=\"(magic) \$PS1\";
export PYTHONPATH=;
export GEM_HOME=;"
alias fixmagicbuild_firefox="export LDFLAGS=\"-ldl -lrt\";
export CPPFLAGS=\"-DLIBYUV_DISABLE_X86\""
alias fixmagic_gcc48="export PATH=/prefix/gcc48/bin:\$PATH;
export LD_LIBRARY_PATH=/prefix/gcc48/lib64:/prefix/gcc48/lib/gcc/x86_64-redhat-linux/4.8.5:\$LD_LIBRARY_PATH;
export PS1=\"(gcc48) \$PS1\""
alias unmagic="if [ -n \"\$__OLD_PRE_MAGIC_PATH\" ]; then
export PATH=\$__OLD_PRE_MAGIC_PATH;
export MANPATH=\$__OLD_PRE_MAGIC_MANPATH;
export PS1=\$__OLD_PRE_MAGIC_PS1;
export PYTHONPATH=\$__OLD_PRE_MAGIC_PYTHONPATH;
export GEM_HOME=\$__OLD_PRE_MAGIC_GEM_HOME;
export LD_LIBRARY_PATH=\$__OLD_PRE_MAGIC_LD_LIBRARY_PATH;
export LDFLAGS=\$__OLD_PRE_MAGIC_LDFLAGS;
export CPPFLAGS=\$__OLD_PRE_MAGIC_CPPFLAGS;
unset __OLD_PRE_MAGIC_PATH;
unset __OLD_PRE_MAGIC_MANPATH;
unset __OLD_PRE_MAGIC_PS1;
unset __OLD_PRE_MAGIC_http_proxy;
unset __OLD_PRE_MAGIC_PYTHONPATH;
unset __OLD_PRE_MAGIC_GEM_HOME;
unset __OLD_PRE_MAGIC_LD_LIBRARY_PATH;
unset __OLD_PRE_MAGIC_LDFLAGS;
unset __OLD_PRE_MAGIC_CPPFLAGS;
fi
"
alias ccsm="if [ -n \"\$__OLD_PRE_MAGIC_PATH\" ]; then
PATH=/prefix/gcc48/bin:\$PATH LD_LIBRARY_PATH=/prefix/gcc48/lib64:/prefix/gcc48/lib/gcc/x86_64-redhat-linux/4.8.5:\$LD_LIBRARY_PATH ccsm
else
echo \"command not found :P. Use magic.\"
fi
"
alias compiz="if [ -n \"\$__OLD_PRE_MAGIC_PATH\" ]; then
echo \"don start compiz with magic. Compiz alias takes care of LD_LIBRARY_PATH etc.\"
else
rm -f /prefix/lib/libGL.*
cd $HOME
unset LD_LIBRARY_PATH
/lib64/ld-linux-x86-64.so.2 --library-path /prefix/gcc48/lib64:/prefix/lib /prefix/bin/compiz --replace ccp
fi
"
alias dbeaver="if [ -n \"\$__OLD_PRE_MAGIC_PATH\" ]; then
PATH=/prefix/java/oracle-8/bin/ /path/to/dbeaver
else
echo \"command not found :P. Use magic.\"
fi
setxkbmap -option "grp:alt_shift_toggle,lv3:ralt_switch" "us,cz_qwerty"
Tiskni
Sdílej:
Bohužel docker/snappy/flatpak integraci vůbec neřeší a vlastně považují za úspěch že jdou jejich balíčky spustit na různých distribucíchMrkni na AppImage, tam mi integrácia napríklad témy funguje. Určite to nebude riešiť rovnaké vykresľovaním fontov, ale ja zas niesom taký detailista :) Keď by si to chcel predsa uzavrieť do kontaineru, tak by som použil Firejail. Riešenie od RedHat ako sa už stáva bežnou praxou sú stále nefunkčné.