Byla vydána nová verze 6.1 linuxové distribuce Lakka (Wikipedie), jež umožňuje transformovat podporované počítače v herní konzole. Nejnovější Lakka přichází s RetroArchem 1.22.2.
Matematický software GNU Octave byl vydán ve verzi 11.1.0. Podrobnosti v poznámkách k vydání. Vedle menších změn rozhraní jsou jako obvykle zahrnuta také výkonnostní vylepšení a zlepšení kompatibility s Matlabem.
Weston, referenční implementace kompozitoru pro Wayland, byl vydán ve verzi 15.0.0. Přehled novinek v příspěvku na blogu společnosti Collabora. Vypíchnout lze Lua shell umožňující psát správu oken v jazyce Lua.
Organizace Apache Software Foundation (ASF) vydala verzi 29 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.
Ústavní soud na svých webových stránkách i v databázi NALUS (NÁLezy a USnesení Ústavního soudu) představil novou verzi chatbota využívajícího umělou inteligenci. Jeho posláním je usnadnit veřejnosti orientaci v rozsáhlé judikatuře Ústavního soudu a pomoci jí s vyhledáváním informací i na webových stránkách soudu, a to i v jiných jazycích. Jde o první nasazení umělé inteligence v rámci webových stránek a databází judikatury českých soudů.
Byla vydána nová verze 10.1 z Debianu vycházející linuxové distribuce DietPi pro (nejenom) jednodeskové počítače. Přehled novinek v poznámkách k vydání. Vypíchnuta je podpora NanoPi Zero2 a balíček WhoDB.
Konference Otvorený softvér vo vzdelávaní, výskume a v IT riešeniach OSSConf 2026 proběhne od 1. do 3. července 2026 na Žilinské univerzita v Žilině: "Cieľom našej konferencie je poskytnúť priestor pre informovanie o novinkách vo vývoji otvoreného softvéru a otvorených technológií, o možnostiach využitia týchto nástrojov vo vede a vzdelávaní a taktiež poskytnúť priestor pre neformálne priateľské stretnutie užívateľov a priaznivcov
… více »Korespondenční seminář z programování (KSP) pražského Matfyzu pořádá i letos jarní soustředění pro začátečníky. Zváni jsou všichni středoškoláci a starší základoškoláci, kteří se chtějí naučit programovat, lépe uvažovat o informatických úlohách a poznat nové podobně smýšlející kamarády. Úplným začátečníkům bude určen kurz základů programování a kurz základních algoritmických dovedností, pokročilejším nabídneme různorodé
… více »Fedora je od 10. února dostupná v Sýrii. Sýrie vypadla ze seznamu embargovaných zemí a Fedora Infrastructure Team mohl odblokovat syrské IP adresy.
Ministerstvo zahraničí Spojených států amerických vyvíjí online portál Freedom.gov, který umožní nejenom uživatelům v Evropě přístup k obsahu blokovanému jejich vládami. Portál bude patrně obsahovat VPN funkci maskující uživatelský provoz tak, aby se jevil jako pocházející z USA. Projekt měl být původně představen již na letošní Mnichovské bezpečnostní konferenci, ale jeho spuštění bylo odloženo.
/*Pri prekladu zakomentovat podle potreby*/
#define OS_LINUX_OPT
#define OS_LINUX_USR_LOCAL
#define OS_LINUX_USR
#define OS_WINDOWS
char* grabFile(char* filespec) {
char p[256];
#ifdef OS_LINUX_USR
strcat(p,"/usr/local/myprogram/");
strcat(p,filespec);
#endif
#ifdef OS_WINDOWS
strcat(p,getProgramDirectory());
strcat(p,"\\");
strcat(p.filespec);
#endif
return p;
}
(Priznavam,ze tento kod neni bezpecny, snadno lze zpusobit preteceni)
... a tak nejak. Prikladem podobneho ucinneho vyuziti preprocesoru
jsou zdrojove kody ke hre Wolfenstein 3D.
$HOME, což může představovat vše od /home/vyskocil/usr/program v práci, až po /homes/eva/xv/xvysko02/usr/program ve škole
.
getProgramDirectory(), kterou si ovsem musite napsat.A pak je opravdu jedno, kde ten program je.
Tudiz si zavedeme: OS_LINUX_ANYWHERE
char* grabFile(char* filespec) {
char p[256];
#ifdef OS_LINUX_ANYWHERE
strcat(p,getProgramDirectory());
strcat(p,"/");
strcat(p,filespec);
#endif
return p;
....
}
getProgramDirectory() proste vezme nulty parametr prikazove radky
a odsekne z nej vse za poslednim lomitkem a je to. Tak se program
najde, at uz je kdekoliv.
namespace fs = boost::filesystem;
// inicializace cesty
fs::path tmpPath( FileOption, fs::native );
// pokud cesta neni kompletni
// (neobsahuje C:\ nebo "/root/..")
// pripoj pracovni adresar (workingDir)
File = tmpPath.is_complete()
? tmpPath
: workingDir/tmpPath; //spojeni cest
if( !fs::exists( File ) )
{
std::cerr << "\nerror: File "
<< File.string()
<< "\ndoes not exist.\n";
return 1;
}
else if( fs::is_directory( File ) )
{
std::cerr << "\nerror: Argument for the file "
<< File.string()
<< "\nis a directory.\n";
return 1;
}
samozrejme v cestach k souborum bude potreba zmenit lomitka za zpetna lomitkaTo je pěkná blbost.
Tiskni
Sdílej: