Na Crowd Supply běží kampaň na podporu open source čtečky elektronických knih Open Book Touch. Postavena je na ESP32-S3. Má 4,26palcový dotykový e-papírový displej s rozlišením 480×800 pixelů, podsvícení, slot na microSD kartu. Cena je 149 dolarů a poštovné 12 dolarů. Dodání je plánováno na duben 2027.
Na Humble Bundle běží akce Linux: All the Things by O'Reilly a Picos, HATs, and More by Raspberry Pi Press. Elektronické knihy lze koupit se slevou a současně podpořit organizace Code for America a Raspberry Pi Foundation.
FreeCAD (Wikipedie), tj. svobodný multiplatformní parametrický 3D CAD, má nový vtipný a současně užitečný doplněk Banana For Scale (GitHub). Aktuálně umožňuje do výkresu vložit banán nebo plechovku pro porovnání a určení měřítka.
Blender Studio nedávno oznámilo plán vytvořit svůj první otevřený (open source) celovečerní film. Film by se měl jmenovat Overgrown (YouTube). Film vznikne, pokud se zajistí financování. Prvním krokem je získat 7 000 předplatitelů Blender Studia. Cena je od 11,50 eur měsíčně. Aktuálně počet předplatitelů je 5 289. Předplatné pokryje 20 % nákladů. Zbytek, 80 % nákladů, má být financován externími producenty nebo distributory.
Byl vydán Debian 13.6, tj. šestá opravná verze Debianu 13 s kódovým názvem Trixie a Debian 12.15, tj. poslední patnáctá opravná verze Debianu 12 s kódovým názvem Bookworm, k dispozici je LTS. Řešeny jsou především bezpečnostní problémy, ale také několik vážných chyb. Instalační média Debianu 13 a Debianu 12 lze samozřejmě nadále k instalaci používat. Po instalaci stačí systém aktualizovat.
V jádře Linux byla nalezena a v upstreamu již byla opravena kritická zranitelnost GhostLock aneb CVE-2026-43499. Lokálnímu uživateli umožňuje získat práva roota a také obejít kontejnerovou izolaci. Zranitelnost existovala v Linuxu 15 let, tj. od roku 2011, od Linuxu verze 2.6.39.
Evropská komise předběžně shledala, že návykový design aplikací Instagram a Facebook od americké společnosti Meta porušuje unijní nařízení o digitálních službách (DSA). Návykový design zahrnuje například takzvané nekonečné posouvání, automatické přehrávání videí, tzv. push notifikace, kdy aplikace uživatele vybízí k návratu do jejího prostředí, či vysoce personalizovaný algoritmus, který rychle pozná, co uživatele baví a snaží
… více »Byla vydána verze 1.97.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.
Švýcarská společnost Punkt. má nově v nabídce telefon Punkt. MC03. Telefon byl navržen ve Švýcarsku s důrazem na soukromí a digitální suverenitu a vyroben v Německu. V telefonu běží operační systém AphyOS (Apostrophy OS) založený na AOSP (Android Open Source Project) 15. Cena telefonu je 745 eur.
TypeScript (Wikipedie), tj. JavaScript rozšířený o statické typování a další atributy, byl vydán v nové verzi 7.0. Kompilátor byl kvůli výkonu přepsán z TypeScriptu do Go.
Ha, díky za nápad - dala by se na tom testovat rychlost komprimace/dekomprimace. Rozhodně jestli se mi to povede vygenerovat, tak zkusim LZMA kompresi a někam to uploadnout. Zatim jsem "jen" na 39.113.249.255 
Narazil jsem už na pár programů, které neukončený poslední řádek považovaly za chybný, nebo ho ani nedokázaly načíst...
'\n'.
wc -l
jinak by poslední (prázdný) řádek nesplňoval požadavkyto zalezi jestli newline character povazujes za oddelovac nebo ukoncovac radku. Pokud za ukoncovac tak tam prazdny radek neni, i kdyz ho nektery editory zobrazi...
There is also some confusion whether newlines terminate or separate lines. If a newline is considered a separator, there will be no newline after the last line of a file. The general convention on most systems is to add a newline even after the last line, i.e. to treat newline as a line terminator. Some programs have problems processing the last line of a file if it is not newline terminated. Conversely, programs that expect newline to be used as a separator will interpret a final newline as starting a new (empty) line.zdroj: http://en.wikipedia.org/wiki/Newline
\n není oddělovač, nýbrž ukončovač řádku.
Také by se to dalo říct tak, že každá položka v souboru je oddělená ukončením řádkuŘíct se to sice dá, dokonce i napsat, po striktní logice dokonce dojdeš k tomu, že je to pravdivý výrok (pokud je každá položka na samostatném řádku), ale přesto je nesmysl se podle toho řídit.
Ano, řádky mají být odddělené, takže poslední řádek je oddělený od konce souboru.
if je zbytečný – když máš metodu/funkci načtiDalšíŘádek(), tak v ní prostě čteš vstup, dokud nenarazíš na konec řádku nebo* souboru a načtenou hodnotu vrátíš. Takže z tohoto pohledu (načítání souboru, kde položka = řádek) je úplně jedno, jestli tam to poslední \n je nebo ne. (význam to má akorát při spojování souborů nebo při výpisu do konsole…)
*) je jasné, že za koncem souboru už řádek nepokračuje, takže vrátíme hodnotu. Kdybychom chtěli být zlí, tak vyhodíme výjimku, že je řádek v neplatné syntaxi (není ukončen \n), ale to by asi k ničemu dobré nebylo.
Zaujímalo by ma ako na tom bola ramka počas vytvárania súboru.
já moc ne.
unsigned long i;
for (i=0; i<2^32; i++) {
sprintf("%i.%i.%i.%i",(*i & 0xff000000)>>24,(*i & 0x00ff0000)>>16,(*i & 0x0000ff00)>>8,(*i & 0x000000ff));
}
XOR
uint32_t i = UINT32_C(0xffeeffee);
printf("%" PRIu32 "\n", i);
tohle jsem někde našel a upravil, snažil jsem se to pochopit... mé znalosti končí u PHP, čímž jsem značně deformován
#include <stdint.h>
#include <stdio.h>
int main()
{
uint32_t ip = 0;
do
{
printf("%u.%u.%u.%u\n", (uint8_t)(ip >> 24), (uint8_t)(ip >> 16), (uint8_t)(ip >> 8), (uint8_t)ip);
}
while (++ip <= 0xffffffff);
}
Ale nemám dost místa na disku na to abych to odzkoušel
Určitě je to správně? Gynerovaný soubor má už 63GB a pořát jede, zdá se, odzačátku .. :D
poky@antik:~$ time ./c > ips
Ukončen (SIGTERM)
real 28m31.981s
user 25m41.980s
sys 1m38.766s
poky@antik:~$ du ips
69162400 ips
poky@antik:~$ du -h ips
66G ips
poky@antik:~$ wc -l ips
4998991943 ips
poky@antik:~$
Taky jsem si ten kód mohl nejdřív pořádně pročíst...
int main(void)
{
int i,j,k,l;
long long int x=0;
char ip[20];
for (i=0;i<POCET;++i)
{
printf("%03d\n",i);
for (j=0;j<POCET;++j)
for (k=0;k<POCET;++k)
for (l=0;l<POCET;++l)
{
sprintf(ip,"%d.%d.%d.%d\n",i,j,k,l);
x+=strlen(ip);
}
}
printf("%lld\n",x);
return 0;
}
O ukládání do souboru jsem se ani nepokoušel, nejvíc místa na jednom disku mám gigabajt. I takhle ten program trval rovné tři hodiny
A kde je test ipv6? 
PS: výplety mám taky v jednání, podle počtu kusů buď rovnou v UK (jen ty pola), nebo v PL.
...tak je pochopitelně jasný, že pro kernelultras.org je 1000+ triček kapku moc...
Počet ipv4 adres vám trochu hapruje, 10^12 jste vzal kde? Je to snad 2^32 ne? Tedy 4 294 967 296 adres..
X.X.X.X
(10+2*90+3*156)/256 = 658/256 = 329/128 = 2.57
4+4*329/128 = 4+329/32 = 457/32 = 14.28
2^32*457/32 = 2^(32-5)*457=2^27*457=61'337'501'696
Máme 4 čísla (X.X.X.X), kde každé z čísel může nabývat 255 různých možností.
256
1.2.3.4
10.0.128.240
196.168.0.1
AB.CD.EF.51
10.A.1B.1
Podle masky sítě může být i 11.22.33.0/8. Ale zpravidla se toto nepoužívá.
akú veľkosť by mal súbor obsahujúci v každom riadku presne jednu IPv4 adresu
IPv4 adresa je 32b číslo, tedy 4B. 2^32*4B = 16 GiB. Použijeme-li nějaký znak jako oddělovač tak to bude 20GiB. Netřeba generovat a hlavně netřeba ukládat. Btw. jsi to mohl prohnat přes pv do /dev/null.
IPv4 adresa je 32b číslo, tedy 4B. 2^32*4B = 16 GiB.To mi bolo jasné pred testom - nebolo mi jasné akú veľkosť by mal ASCI súbor. Ešte by som chcel odfiltrovať _nejako_ (???) len adresné rozsahy patriace SR a CR z tohto zoznamu, takže hádzať to do /dev/null pre mňa nemá nejako význam :)
To mi bolo jasné pred testom - nebolo mi jasné akú veľkosť by mal ASCI súbor.
Nicméně počítat to tak, že si je všechny vygenerujete, je nesmysl (a když už, je nesmysl si ten soubor generovat na disku a pak na něj pouštět wc, od toho máme roury). Stačí jednoduchá úvaha: každý byte může nabývat 10 jednociferných, 90 dvouciferných a 156 tříciferných hodnot, každá se ve výpisu zopakuje 2^24-krát (pro všechny kombinace zbývajících tří). K tomu navíc na každý řádek připadají tři tečky a jeden linefeed. Celkem tedy 4*2^24*(10+2*90+3*156) + (3+1)*2^32 = 61337501696. I kdybych to počítal ručně pomocí tužky a papíru, budu o řád rychlejší než váš program…
.
Ešte by som chcel odfiltrovať _nejako_ (???) len adresné rozsahy patriace SR a CR z tohto zoznamuTo sa stále mení
Nestačilo by jen definovat přes regulární výraz třeba formu IP adresy a pak podle potřeby s tím pracovat? Z toho bys mohl i spočítat velikost souboru ... místo samotného generování.
49*48*47*46*45*44
------------------- = 13983816 sloupečků
1*2*3*4*5*6
A samozřejmě to musíš vydělit počtem sloupečků na tiketu (ani nevím kolik jich dneska je), vyjde ti počet tiketů...
No, 1:14M, to je asi stejně pravděpodobný, jako že mě sundá meteorit, když vyjdu před barák :)pokud to mam interpretovat jako P(sunda me meteorit | vyjdu pred barak) = 1/14e6, tak pri 10e6 lidech, kazdy vyjde pred barak prumerne 2x denne (jenom odhad), by meteorit sundal prumerne 2*10e6 / 14e6 = 1.43 lidi denne.
Jooo
VŠICHNI 
BTW všichni ne, někteří stahovali na IPv6
.
Uz chapu, proc vsichni potrebuji tak rychle pocitace a velke disky.To jako že u pornosbírky ti taky stačí si poznamenat, jak je velká a kolik je minut a obsah už mít nemusíš?
.
.
, nejvíc mě u videí štve .mp4, ten se nedá přehrát mplayerem, dokud není celý
.
Tiskni
Sdílej: