Stanislav Fort, vedoucí vědecký pracovník z Vlčkovy 'kyberbezpečnostní' firmy AISLE, zkoumal dopady Anthropic Mythos (nový AI model od Anthropicu zaměřený na hledání chyb, který před nedávnem vyplašil celý svět) a předvedl, že schopnosti umělé inteligence nejsou lineárně závislé na velikosti nebo ceně modelu a dokázal, že i některé otevřené modely zvládly v řadě testů odhalit ve zdrojových kódech stejné chyby jako Mythos (například FreeBSD CVE-2026-4747) a to s výrazně nižšími provozními náklady.
Federální návrh zákona H.R.8250 'Parents Decide Act', 13. dubna předložený demokratem Joshem Gottheimerem a podpořený republikánkou Elise Stefanik coby spolupředkladatelkou (cosponsor), by v případě svého schválení nařizoval všem výrobcům operačních systémů při nastavování zařízení ověřovat věk uživatelů a při používání poskytovat tento věkový údaj aplikacím třetích stran. Hlavní rozdíl oproti kalifornskému zákonu AB 1043 a kolorádskému SB26-051 je ten, že federální návrh by platil rovnou pro celé USA.
Qwen (čínská firma Alibaba Cloud) představila novou verzi svého modelu, Qwen3.6‑35B‑A3B. Jedná se o multimodální MoE model s 35 miliardami parametrů (3B aktivních), nativní kontextovou délkou až 262 144 tokenů, 'silným multimodálním vnímáním a schopností uvažování' a 'výjimečnou schopností agentického kódování, která se může měřit s mnohem rozsáhlejšími modely'. Model a dokumentace jsou volně dostupné na Hugging Face, případně na čínském Modelscope. Návod na spuštění je už i na Unsloth.
Sniffnet, tj. multiplatformní (Windows, macOS a Linux) open source grafická aplikace pro sledování internetového provozu, byl vydán ve verzi 1.5. V přehledu novinek je vypíchnuta identifikace aplikací komunikujících po síti.
V programovacím jazyce Go naprogramovaná webová aplikace pro spolupráci na zdrojových kódech pomocí gitu Forgejo byla vydána ve verzi 15.0 (Mastodon). Forgejo je fork Gitei.
Současně se SUSECON 2026 proběhne příští čtvrtek v Praze také komunitní Open Developer Summit (ODS) zaměřený na open source a openSUSE. Akce se koná ve čtvrtek 23. 4. (poslední den SUSECONu) v Hilton Prague (místnost Berlin 3) a je zcela zdarma, bez nutnosti registrace na SUSECON. Na programu jsou témata jako automatizace (AutoYaST), DevOps, AI v terminálu, bezpečnost, RISC-V nebo image-based systémy. Všichni jste srdečně zváni.
Český úřad zeměměřický a katastrální zavedl u anonymního nahlížení do katastru nemovitostí novou CAPTCHA ve formě mapové puzzle: nepřihlášení uživatelé musí nově správně otočit devět dlaždic v 3x3 poli tak, aby dohromady daly souvislý obrázek výseče reálné mapy, přičemž na to mají pouze jeden časově omezený pokus. Test je podle uživatelů i odborníků příliš obtížný a na sociálních sítích pochopitelně schytává zaslouženou kritiku a
… více »Byla vydána verze 1.95.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.
Mozilla prostřednictvím své dceřiné společnosti MZLA Technologies Corporation představila open-source AI klienta Thunderbolt. Primárně je určený pro firemní nasazení.
Firma Cal.com oznámila, že přesouvá svůj produkční kód z otevřeného do uzavřeného repozitáře z důvodu bezpečnostního rizika umělé inteligence, která prý dokáže vyhledávat a zneužívat zranitelnosti rychleji, než by je jejich vývojářský tým stíhal opravovat. Zároveň zveřejnila samostatnou, open-source verzi Cal.diy pod licencí MIT, ovšem bez řady původních funkcí. O tom, zda je toto opatření rozumné, existují pochyby. … více »
Před několika měsíci jsem kolegovi ukázal návykovost a sílu jedi-vim (jedi-vim spolu se sadou dalších pluginů promění vim v plnohodnotné Python IDE), jenže kolega si už o pár dní později začal stěžovat, že jedi-vim nemůže používat na testovacích serverech, na kterých převážně běží RHEL5 a RHEL6 (to znamená více než pět let starý vim a to navíc bez podpory pythonu). Instalovat na všechny servery nejnovější python a vlastní vim rozhodně není idealní řešení. Raději si zkusíme pohrát s build procesem (a zdrojákama) vimu a zkompilovat vim, který bude stačit rozbalit a poběží na (skoro)jakémkoliv moderním (glibc-based) linuxu...
Následující postup jsem ověřoval na panenské minimální instalaci CentOS 5, takže začneme opravdu od začátku, instalací základních závislostí.
yum install gcc make ncurses-devel gcc-c++ # mercurial získame z EPEL: wget http://download.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm rpm -Uvh epel-release-5-4.noarch.rpm yum install mercurial
Přestože bude náš build "portable", tak v něm stejně budou natvrdo zadrátované cesty odvozené z --prefix parametru pro ./configure. Mít v portable binárce stringy jako /home/luv/sandbox/vim_build/ je prostě lame, takže si připravíme více sexy prefix.
mkdir /vim_build/
Ještě před kompilací vimu zkompilujeme Python do /vim_build
wget http://www.python.org/ftp/python/2.7.5/Python-2.7.5.tgz tar xfz Python-2.7.5.tgz cd Python-2.7.5 ./configure --prefix=/vim_build/python --enable-shared make make install
A teď už zkompilujeme samotný vim.
hg clone https://vim.googlecode.com/hg/ vim cd vim # A tady je potřeba si dát pozor! # 1) python-config k instalaci pythonu, proti které budeme kompilovat musí být první v PATH # 2) také musíme upravit LD_LIBRARY_PATH (přidat cestu ke knihovnám k naší instalaci pythonu) # 3) configure musíme předat -–enable-pythoninterp=dynamic (dynamic je důležité) export PATH=/vim_build/python/bin/:$PATH export LD_LIBRARY_PATH=/vim_build/python/lib/:$LD_LIBRARY_PATH ./configure --disable-nls --enable-multibyte --disable-selinux --enable-pythoninterp=dynamic --disable-rubyinterp --with-features=huge --without-x --disable-gui --disable-gpm --with-tlib=ncurses --prefix=/vim_build/vim/ # Teď můžeme v src/auto/config.log ověřit, že vim bude zkompilován oproti správné verzi pythonu make make install # A můžeme ověřit, že všechno funguje: /vim_build/vim/bin/vim # a ve vimu ověříme pomocí ":python import operator; print(operator)", že funguje podpora skriptování v pythonu.
Paráda, máme funkční vim s pythonem. Jenže tady je samozřejmě problém, že vim bude vždycky hledat python moduly ve /vim_build/python/... a runtime soubory ve /vim_build/vim/shared/. Naštěstí toto všechno se dá změnit pomocí manipulace proměnných LD_LIBRARY_PATH, PYTHONPATH a VIMRUNTIME. Nejdříve ale vytvoříme nový adresář, který bude obsahovat jak vim, tak python, ať máme všechno pokupě:
cd /vim_build mkdir relocatable_test cd relocatable_test cp -r ../vim/bin/ . cp -r ../vim/share/vim/vim74/ runtime mkdir deps cp -r ../python deps
Funguje? Mělo by 
cd /vim_build/relocatable_test LD_LIBRARY_PATH=`pwd`/deps/python/lib PYTHONPATH=`pwd`/deps/python/lib/python2.7/:`pwd`/deps/python/lib/python2.7/lib-dynload:`pwd`/deps/python/lib/python2.7/site-packages VIMRUNTIME=`pwd`/runtime bin/vim
A teď příjde okamžik pravdy a ověříme, že manipulace těchto proměnných prostředí opravdu stačí.
cd /vim_build/ rm -rf python vim # a ověříme, že vim stále funguje # doporučil bych opět ověřit pomocí ":python import operator; print(operator)", že funguje podpora skriptování v pythonu. cd relocatable_test LD_LIBRARY_PATH=`pwd`/deps/python/lib PYTHONPATH=`pwd`/deps/python/lib/python2.7/:`pwd`/deps/python/lib/python2.7/lib-dynload:`pwd`/deps/python/lib/python2.7/site-packages VIMRUNTIME=`pwd`/runtime bin/vim
Jenže takto vim pouštět pokaždé není zrovna pohodlné, a "portable" buildem bych se takovéto rešení nazvat neodvážil. Samozřejmě, nejjednodušší rešení by bylo přidat jednoduchý wrapper, který tyto proměnné před spuštěním nastaví, ale když už je vim open-source, tak proč toho nevyužít, a neupravit si těch 20 řádku kódu, aby nám všechno fungovalo po vůli.
rm -rf /vim_build mkdir /vim_buildPřekompilujeme Python s nastavením rpath $ORIGIN:
cd Python-2.7.5 # cd do zdrojáků pythonu make clean export LDFLAGS='-Wl,-rpath,\$$ORIGIN/../lib/' ./configure --prefix=/vim_build/python --enable-shared make make installOpatchujeme a překompilujeme vim:
cd vim # cd do zdrojáků vimu make clean patch -p1 < vim_7.4.24-kill_pythonpath.patch patch -p1 < vim_7.4.24-kill_vimruntime.patch export LDFLAGS='-Wl,-rpath,\\\$$ORIGIN/../deps/python/lib/' export PATH=/vim_build/python/bin/:$PATH export LD_LIBRARY_PATH=/vim_build/python/lib/:$LD_LIBRARY_PATH ./configure --disable-nls --enable-multibyte --disable-selinux --enable-pythoninterp=dynamic --disable-rubyinterp --with-features=huge --without-x --disable-gui --disable-gpm --with-tlib=ncurses --prefix=/vim_build/vim/ make make installPřipravíme samotný portable build:
cd /vim_build mkdir vim_py27_rhel5 cd vim_py27_rhel5 cp -r ../vim/bin/ . cp -r ../vim/share/vim/vim74/ runtime mkdir deps cp –r ../python deps bin/vim # teď už by vše mělo fungovat rm -rf ../python ../vim mv /vim_build/vim_py27_rhel5 test_location cd test_location bin/vim # a tento build by měl být opravdu relocatableNakonec ještě můžeme otestovat jedi-vim:
# nainstalujeme pathogen mkdir -p ~/.vim/autoload cd ~/.vim/autoload wget 'http://www.vim.org/scripts/download_script.php?src_id=19375' -O pathogen.vim echo "call pathogen#infect()" >> ~/.vimrc # nainstalujeme jedi-vim mkdir ~/.vim/bundle/ cd ~/.vim/bundle git clone https://github.com/davidhalter/jedi-vim cd jedi-vim git submodule update --init # hotovo, jedi-vim by těd měl fungovat s naším vimem, který můžeme nakopírovat na jakýkoliv stock rhel5, rhel6 box (vlastně víceméně skoro jakýkoliv moderní linux - testoval jsem i na Ubuntu 12.04) test_location/bin/vim
Pokud odkazy na patche náhodou nefungují, tak je ještě tady přikládám:
vim_7.4.24-kill_pythonpath.patch:
--- vim_source/src/if_python.c 2013-09-10 14:35:06.000000000 +0100
+++ vim_source_patched/src/if_python.c 2013-09-10 15:29:05.000000000 +0100
@@ -20,6 +20,10 @@
#include "vim.h"
#include <limits.h>
+#include <unistd.h>
+#include <libgen.h>
+#include <string.h>
+#include <stdlib.h>
/* uncomment this if used with the debug version of python.
* Checked on 2.7.4. */
@@ -663,6 +667,37 @@
return FAIL;
}
#endif
+ char curr_exe_path[1024];
+ ssize_t len;
+
+ if ((len = readlink("/proc/self/exe", curr_exe_path, sizeof(curr_exe_path)-1)) != -1) {
+ curr_exe_path[len] = '\0';
+ char* top_dir = dirname(dirname(curr_exe_path));
+ char python_path1[2048];
+ char python_path2[2048];
+ char python_path3[2048];
+ char python_path[6200];
+
+ memset(python_path1,0,2048);
+ memset(python_path2,0,2048);
+ memset(python_path3,0,2048);
+ memset(python_path,0,6200);
+
+ strcpy(python_path1,top_dir);
+ strcpy(python_path1+strlen(top_dir),"/deps/python/lib/python2.7/:");
+
+ strcpy(python_path2,top_dir);
+ strcpy(python_path2+strlen(top_dir),"/deps/python/lib/python2.7/lib-dynload:");
+
+ strcpy(python_path3,top_dir);
+ strcpy(python_path3+strlen(top_dir),"/deps/python/lib/python2.7/site-packages");
+
+ strcpy(python_path,python_path1);
+ strcpy(python_path+strlen(python_path1),python_path2);
+ strcpy(python_path+strlen(python_path1)+strlen(python_path2),python_path3);
+
+ setenv("PYTHONPATH",python_path,1);
+ }
if (hinstPython)
return OK;
vim_7.4.24-kill_vimruntime.patch:
--- vim_source/src/misc1.c 2013-09-10 14:35:06.000000000 +0100
+++ vim_source_patched/src/misc1.c 2013-09-10 15:35:30.000000000 +0100
@@ -14,6 +14,11 @@
#include "vim.h"
#include "version.h"
+#include <unistd.h>
+#include <libgen.h>
+#include <string.h>
+#include <stdlib.h>
+
static char_u *vim_version_dir __ARGS((char_u *vimdir));
static char_u *remove_tail __ARGS((char_u *p, char_u *pend, char_u *name));
#if defined(FEAT_CMDL_COMPL)
@@ -4181,6 +4186,22 @@
if (!vimruntime && STRCMP(name, "VIM") != 0)
return NULL;
+ if (vimruntime) {
+ char curr_exe_path[1024];
+ ssize_t len;
+ if ((len = readlink("/proc/self/exe", curr_exe_path, sizeof(curr_exe_path)-1)) != -1) {
+ curr_exe_path[len] = '\0';
+ static char runtime_path[2048];
+ memset(runtime_path,0,2048);
+ char* top_dir = dirname(dirname(curr_exe_path));
+ strcpy(runtime_path,top_dir);
+ strcpy(runtime_path+strlen(top_dir),"/runtime");
+
+ default_vimruntime_dir = runtime_path;
+ p = runtime_path;
+ }
+ }
+
/*
* When expanding $VIMRUNTIME fails, try using $VIM/vim<version> or $VIM.
* Don't do this when default_vimruntime_dir is non-empty.
A na závěr ještě odkaz na hotové buildy (vim mercurial changeset 5350, zkompilováno na CentOS 5): pro x86 a x86-64.
Tiskni
Sdílej:
poněkdu mi uniká pointa, když chce bleeding edge software, tak proč RHEL5 ...tak si znova precti uvodni odstavec
. Takto staci rozbalit jeden tarball do /home (nebo na NFS) a hotovo (a system to nijak neovlivni).
kterych bychom se nejradeji nedotykaliO to vice nechapu proc tam potrebujete vim s IDE-like konfiguraci. Jestli chci pracovat na necem vetsim, tak sshfs to preci jisti. Takhle resim i obskurni situace (napr. QNX, kde je dostupny SW v jaksi, slusne receno, zajimavem stavu). Kazdopadne presne na tento typ problemu (novy soft na starem RHELu tak, aby neovlivnil zadnou z casti systemu) jsou Software Collections (SCL) jak uz kavol nize zminil.
... ja vim, ze to je hrozne, ale takova proste je situace
jinak pro RHEL6 je k dispozici python33, to nestačí?Odkaz na repo mas?
I kdyz, samotny py3.3 originalni problem neresi, protoze je potreba jeste proti nemu zkompilovany vimto sice samo o sobě neřeší, ale přijde mi pořád příjemnější mít k dispozici novější python a jen si proti němu přebuildit srpm novějšího vimu (za předpokladu, že tam není žádná další zásadní závislost?), nežli páchat výše uvedená zvěrstva ...
Budes se jeste muset vrtat v SPEC file,no, to byla ta závorka "za předpokladu" - u dost věcí funguje prostý rebuild ... v tomto případě by bylo potřeba nejdřív nahodit scl prostředí; přiznávám, že o tom toho moc nevím, sám jsem pod tím ještě nic nebuildil, jen vím, že "řešení existuje" protože prostě různé balíčky zbuilděné proti novým verzím jsem měl pod rukama
ale souhlasim, ze vytvorit si rpm, ktere takto nainstaluje vim napr. do /optale to nemusíš, tím novým vimem můžeš klidně přeplácnout systémový, jen bude záviset na tom kolekčním pythonu místo defaultního
Ale potrebuje roota,no tak jsem-li admin, tak snad jedno su/sudo není problém ...
a navic delat cokoliv mimo /home na techto serverech je .. neidealni.tož to už je váš boj
já upgrade textového editoru, eventuelně doinstalování závislostí, za extra nebezpečný zásah nepovažuju, ale samozřejmě neznám detaily prostředí
Tenhle build vimu je "portable" a navic funguje v pohode i treba na stable Debianu, Ubuntu atd. Rozbalim jeden tarball ve svym home, pustim a jedu, kdekoliv. Jasne, obrovska nevyhoda je, ze ma nabundlovany cely python.já hlavně nějak nerozumím, proč bys měl chtít "jet" v home na serveru, na který nechceš moc šahat, v ~ typicky "jezdím" na své workstation, ale ... stejné jako výše, nenutno rozebírat, prostě máš nějakou potřebu, nabídl jsem ti aktuálnější software v kolekcích(*), pokud to tu potřebu neřeší, hm, tak nic (*) btw, pokud je zájem zařadit tam krom nových databází a whatever i třeba novější vim, je třeba jej projevit, nemáme křišťálové koule, abychom v RH věděli úplně o všem, co si zákazníci přejí (jistě, ne všemu vyhovíme, ale vědět o tom je první krok)