Od soboty do úterý probíhá v Hamburku konference 39C3 (Chaos Communication Congress) věnovaná také počítačové bezpečnosti nebo hardwaru. Program (jiná verze) slibuje řadu zajímavých přednášek. Streamy a záznamy budou k dispozici na media.ccc.de.
Byl představen nový Xserver Phoenix, kompletně od nuly vyvíjený v programovacím jazyce Zig. Projekt Phoenix si klade za cíl být moderní alternativou k X.Org serveru.
XLibre Xserver byl 21. prosince vydán ve verzi 25.1.0, 'winter solstice release'. Od založení tohoto forku X.Org serveru se jedná o vůbec první novou minor verzi (inkrementovalo se to druhé číslo v číselném kódu verze).
Wayback byl vydán ve verzi 0.3. Wayback je "tak akorát Waylandu, aby fungoval Xwayland". Jedná se o kompatibilní vrstvu umožňující běh plnohodnotných X11 desktopových prostředí s využitím komponent z Waylandu. Cílem je nakonec nahradit klasický server X.Org, a tím snížit zátěž údržby aplikací X11.
Byla vydána verze 4.0.0 programovacího jazyka Ruby (Wikipedie). S Ruby Box a ZJIT. Ruby lze vyzkoušet na webové stránce TryRuby. U příležitosti 30. narozenin, první veřejná verze Ruby 0.95 byla oznámena 21. prosince 1995, proběhl redesign webových stránek.
Všem čtenářkám a čtenářům AbcLinuxu krásné Vánoce.
Byla vydána nová verze 7.0 linuxové distribuce Parrot OS (Wikipedie). S kódovým názvem Echo. Jedná se o linuxovou distribuci založenou na Debianu a zaměřenou na penetrační testování, digitální forenzní analýzu, reverzní inženýrství, hacking, anonymitu nebo kryptografii. Přehled novinek v příspěvku na blogu.
Vývojáři postmarketOS vydali verzi 25.12 tohoto před osmi lety představeného operačního systému pro chytré telefony vycházejícího z optimalizovaného a nakonfigurovaného Alpine Linuxu s vlastními balíčky. Přehled novinek v příspěvku na blogu. Na výběr jsou 4 uživatelská rozhraní: GNOME Shell on Mobile, KDE Plasma Mobile, Phosh a Sxmo.
Byla vydána nová verze 0.41.0 multimediálního přehrávače mpv (Wikipedie) vycházejícího z přehrávačů MPlayer a mplayer2. Přehled novinek, změn a oprav na GitHubu. Požadován je FFmpeg 6.1 nebo novější a také libplacebo 6.338.2 nebo novější.
Byla vydána nová verze 5.5 (novinky) skriptovacího jazyka Lua (Wikipedie). Po pěti a půl letech od vydání verze 5.4.
count_patch=1
for i in $patch/*.patch
do
if [ -f "$i" ]; then
patch[$count_patch]=$(basename "$i" .patch)
echo ${patch[$count_patch]}
((count_patch+=1))
amount_patch=$count_patch
fi
done
echo $amount_patch
count_source2=1
for i in $po_kde4_new/*.1
do
if [ -f "$i" ]; then
source2[$count_source2]=$(basename "$i" .1)
echo ${source2[$count_source2]}
((count_source2+=1))
amount_source2=$count_source2
fi
done
echo $amount_source2
count_source1=1
for i in $po_kde3_new/*.1
do
if [ -f "$i" ]; then
source1[$count_source1]=$(basename "$i" .1)
echo ${source1[$count_source1]}
((count_source1+=1))
amount_source1=$count_source1
fi
done
while [ $amount_patch -gt 0 ]
do
amount_source1=$count_source1
echo $amount_source1
while [ $amount_source1 -gt 0 ]
do
amount_source1=$count_source1
if [[ $(echo ${patch[$count_patch]}) = $(echo ${source1[$count_source1]}) ]]; then
amount_source2=$count_source2
while [ $amount_source2 -gt 0 ]
do
if [[ $(echo ${source1[$count_source1]}) != $(echo ${source2[$count_source2]}) ]]; then
cp ${source1[$count_source1]}.1 ${patch[$count_patch]}.patch $skladiste
fi
((amount_source2-=1))
done
fi
((amount_source1-=1))
done
((amount_patch-=1))
done
Je tam dost chyb.
Mimo jine nevim, jak zajistit aby byla dodrzena podminka, ze soubor o stejnem nazvu nesmi byt v "source2". To co tam mam je vylozene blbe.
Navic mi pri porovnani tech array vraci obe polozky prazdny retezec.
Nemuzete mi poradit, jak to zprovoznit? Pres array to byt nemusi. Jde mi spis o funkcnost a nic lepsiho me nenapadlo.
Dekuju za jakoukoliv radu.
#!/bin/sh
PATCH=./patch
SRC1=./src1
SRC2=./src2
IFS=$'\n'
patchs=( $(find "$PATCH" -type f -name "*.patch" -print0 | xargs -0 -n 1 -i basename '{}' .patch ) )
srcs1=( $(find "$SRC1" -type f -name "*.c" -print0 | xargs -0 -n 1 -i basename '{}' .c ) )
srcs2=( $(find "$SRC2" -type f -name "*.c" -print0 | xargs -0 -n 1 -i basename '{}' .c ) )
# echo "${#srcs1[*]}"
# echo "${srcs1[*]}"
# subory, ktore su v SRC1 a aj v SRC2
tmp1=( $(echo -e "${srcs1[*]}\n${srcs2[*]}" | sort | uniq -d) )
# echo "${#tmp1[*]}"
# echo "${tmp1[*]}"
# subory, ktore su v SRC1, ale nie su v SRC2
tmp2=( $(echo -e "${srcs1[*]}\n${tmp1[*]}\n${tmp1[*]}" | sort | uniq -u) )
# echo "${#tmp2[*]}"
# echo "${tmp2[*]}"
# subory, ktore su v PATCH a SRC1
tmp3=( $(echo -e "${patchs[*]}\n${tmp2[*]}" | sort | uniq -d) )
echo "${#tmp3[*]}"
echo "${tmp3[*]}"
echo "${tmp3[*]}" (teda len názov súboru, ale nie je problém tomu pridať adresár a príponu).
Ja som mal skôr na mysli to, že ak tie názvy súborov budú obsahovať znak "\n", tak to nebude fungovať (a asi si to neporadí ani s veľmi veľkým počtom súborov).
for i in ${tmp3[*]}
do
echo "$PATCH/$i.patch"
echo "$SRC1/$i.c"
done
Tiskni
Sdílej: