Na WWDC25 byl představen balíček Containerization a nástroj container pro spouštění linuxových kontejnerů na macOS. Jedná se o open source software pod licencí Apache 2.0 napsaný v programovacím jazyce Swift.
Do 16. června do 19:00 běží na Steamu přehlídka nadcházejících her Festival Steam Next | červen 2025 doplněná demoverzemi, přenosy a dalšími aktivitami. Demoverze lze hrát zdarma.
Apple na své vývojářské konferenci WWDC25 (Worldwide Developers Conference, keynote) představil řadu novinek: designový materiál Liquid Glass, iOS 26, iPadOS 26, macOS Tahoe 26, watchOS 26, visionOS 26, tvOS 26, nové funkce Apple Intelligence, …
Organizátoři konference LinuxDays 2025, jež proběhne o víkendu 4. a 5. října 2025 v Praze na FIT ČVUT, spustili přihlašování přednášek (do 31. srpna) a sběr námětů na zlepšení.
Po roce byla vydána nová stabilní verze 25.6.0 svobodného multiplatformního multimediálního přehrávače SMPlayer (Wikipedie).
DNS4EU, tj. evropská infrastruktura služeb DNS založená na vysoce federovaném a distribuovaném ochranném ekosystému, byla spuštěna v testovacím režimu [𝕏]. Na výběr je 5 možností filtrování DNS.
Skriptovací programovací jazyk PHP (PHP: Hypertext Preprocessor, původně Personal Home Page) dnes slaví 30 let. Přesně před třiceti lety, 8. června 1995, oznámil Rasmus Lerdorf vydání PHP Tools (Personal Home Page Tools) verze 1.0.
Ve středu v 17:00 byl ve Francii zablokován přístup k PornHubu a dalším webům pro dospělé. K 17:30 došlo k nárůstu počtu registrací Proton VPN o 1 000 % [𝕏]. Dle nového francouzského zákona jsou provozovatelé těchto webů povinni ověřovat věk uživatelů prostřednictvím průkazu totožnosti nebo platební karty.
Před 32 lety, 6. června 1993, byl spuštěn první český WWW server (ještě pod TLD .cs), pro potřeby fyziků zabývajících se problematikou vysokých energií.
Střílečku Borderlands 2 lze v rámci výprodeje série Borderlands na Steamu získat zdarma napořád, když aktivaci provedete do 8. června 19:00.
Tento skript umí stahovat soubory ze serverů rapidshare (.de, .com). Využívá pouze základní nástroje a měl by tak fungovat všude (no dobře, na mikrovlnce mi to nefungovalo, na Asus WL500g taky ne, ale stačí oprava na jeden řádek). Umí ověřit základní chybové stavy (soubor už na serveru není, soubor na serveru sice je, ale server ho ještě nedovolí stáhnout). Od takto jednoduchého skriptu se nedá čekat, že by uměl lámat captcha, takže se zeptá uživatele, zbytek dělá sám.
Skript využijete, pokud potřebujete stahovat něco na počítač, ke kterému nemáte momentálně fyzický přístup. Na tomto počítači vůbec nemusí být v provozu grafika, protože si captcha obrázek můžete prohlédnout z jiného počítače. Typické využití asi bude: sedím ve škole/práci a počítač doma sosá.
Stahování probíhá tak, že člověk někde získá odkaz, zadá do prohlížeče a dostane se tak na úvodní (první) stránku (kde se vybírá Premium nebo Free). Když klikne na Free, dostane se na druhou stránku, kde je captcha. Po napsání správného kódu se soubor začne stahovat.
Servery jsou proti botům chráněny pomocí captcha. Obrázek se stahuje protokolem https. (může někdo vysvětlit, proč nestačí http?)
Obě varianty rapidshare se trošku liší v uživatelském rozhraní. Na modifikaci .com se server (zrcadlo, mirror), odkud se má stahovat, nastavuje už ve formuláři na úvodní stránce , kdežto na .de se to řeší až na druhé stránce (tam, kde je captcha). V obou modifikacích se dá server (zrcadlo) změnit na druhé stránce.
Modifikace .de nutí uživatele čekat nějakou dobu, než se zobrazí captcha. Je to spojené s ošklivě vypadajícím javascriptem (unescape a změť znaků, z nichž třetina je %). Existují návody, jak toto obejít, ale zdá se, že už nefungují, aspoň na mě vždy vybafla hláška psaná nejspíš německy. Modifikace .com čekací dobu nepoužívá a zobrazí captcha hned.
Smysl pro humor: když si zkopírujete adresu obrázku captcha a později si ho necháte zobrazit v prohlížeči, přečtete na něm "LOL".
Fair Play: když si necháte zobrazit captcha obrázek několikrát po sobě bez načtení celé stránky, bude na obrázku nápis, že jste bot a server se s vámi nebude bavit. Když načtete celou stránku znova, je všechno v pořádku, žádný IP ban se nekoná.
Zdá se, že captcha na rapidshare je case insensitive. Navíc možná umožňuje záměnu nuly a písmene 'O', protože se mi ještě nikdy nestalo, že bych napsal kód špatně, i když v něm bylo něco kulatého.
- #!/bin/sh
- #usage: $0 <url>
- #tested on rapidshare.de and rapidshare.com
- #user settings
- url=$1
- directory=~/tmp/rs
- captchaimage=$directory/captcha.png
- tmpfile=$directory/wgettmp
- #other settings
- wget=/usr/bin/wget
- #auxiliary functions
- countdown(){
- echo Countdown
- x=$1
- until [ $x -le 0 ]; do
- echo -e -n "\\r$x "
- x=$(($x - 1))
- sleep 1
- done
- }
- #============================================================
- #The first page
- $wget -O $tmpfile $url
- present=`grep "You want to" $tmpfile | wc -l `
- if [ $present -ge 0 ]
- then
- echo "The file is present"
- else
- echo "The file is not present, exitting"
- exit 1 #the file is not available
- fi
- #============================================================
- #The second page (with captcha)
- action=`grep "action=" $tmpfile | sed -e 's/.*action="\([^"]*\)".*/\1/'`
- uri=`grep 'name="uri"' $tmpfile | sed -e 's/.*name="uri" value="\([^"]*\)".*/\1/'`
- if [ x$uri != x ]
- then
- postData="uri=$uri&dl.start=Free" # rapidshare.de
- server="de"
- else
- postData="dl.start=Free" # rapidshare.com
- server="com"
- fi
- echo Debug information: ----------------
- echo Action is $action
- echo Post Data are $postData
- echo Server is $server
- echo -----------------------------------
- #The second page is downloaded here
- $wget --post-data="$postData" -O $tmpfile $action
- echo Second page downloaded ------------
- if [ $server = "de" ]
- then
- #the "hidden" form with needed information)
- encoded=`grep unescape $tmpfile| sed "s/.*unescape('\(.*\)'.*/\1/"`
- if [ x$encoded = x ]
- then
- minutes=`grep "Or wait" $tmpfile | sed -e "s/.*Or wait\(.*\)minutes.*/\1/"`
- echo Cannot download file yet, wait $minutes minutes
- exit 2
- fi
- wait=`grep "var c =" $tmpfile | sed -e "s/.*var c =\([^;]*\);.*/\1/"`
- #some not fully understood hack, it does not work everywhere
- #http://www.j-pfennig.de/LinuxImHaus/kde_cgi_tutorial.html
- # uencoded=`printf "${encoded//\%/\x}"`
- substitued=`echo $encoded | sed 's/%/\\\\x/g'`
- uencoded=`printf $substitued`
- imagename=`echo $uencoded | sed -e 's/.*<;img src="\([^"]*\)">.*/\1/'`
- action=`echo $uencoded | sed -e 's/.*action="\([^"]*\)".*/\1/'`
- echo Debug information: ----------------
- echo Imagename is $imagename
- echo Action is $action
- echo Wait $wait
- echo -----------------------------------
- #rapidshare.de forces you to wait some time and it seem that
- #it really checks the time interval
- countdown $wait
- else #rapidshare.com
- action=`grep '<;form name="dl" action="' $tmpfile | sed -e 's/.*<;form name="dl" action="\([^"]*\)".*/\1/'`
- if [ x$action = x ]
- then
- minutes=`grep "Or wait" $tmpfile | sed -e "s/.*Or wait\(.*\)minutes.*/\1/"`
- echo Cannot download file yet, wait $minutes minutes
- exit 3
- fi
- imagename=`grep "Please enter" $tmpfile | sed -e 's/.*<;img src="\([^"]*\)".*/\1/'`
- fi
- echo Debug information: ----------------
- echo Imagename is $imagename
- echo Action is $action
- echo -----------------------------------
- #When the download form is displayed
- $wget -O $captchaimage "$imagename"
- #you will probably want to change the following line
- display $captchaimage &
- echo -----------------------------------
- echo ------ Enter Captcha ------------
- echo -----------------------------------
- echo -n "Enter captcha from the image: "
- read captcha
- if [ $server = "de" ]
- then
- postData="actionstring=Download&captcha=$captcha"
- else
- postData="actionstring=Download&accesscode=$captcha"
- fi
- echo Debug information: ----------------
- echo Post Data are $postData
- echo Action is $action
- echo Calling $wget:
- echo $wget --directory-prefix $directory --post-data="$postData" $action
- echo -----------------------------------
- #get the file
- $wget --directory-prefix $directory --post-data="$postData" $action
- echo Finished
chybí příkaz 'wc', takže řádek 26 se musí upravit. Jako varování uvedu, že následující oprava nefunguje:
Program wget (vlastně busybox), který je v Olegově firmware, neumí '--post-data'. Je tedy potřeba použít plnou verzi wget [2]. Stačí rozbalit binárku kamkoliv na disk (binárka má přes 2MB, takže se asi musí dát na externí disk připojený přes USB) a na řádku 10 si nastavte správnou cestu. Nezapomeňte nastavit práva na spuštění.
Tiskni
Sdílej:
#!/bin/bash countDown() { i=26 while ((--i >= 0)); do echo -n "$i" sleep 1 tput el1 tput cub 3 done } if [ $# != 1 ]; then echo -e "\nUsage:\n\t$0 URL\n" exit 1 fi UA="Opera/9.12 (X11; Linux i686; U; en)" OUTPUT=~/Desktop/"$(basename $1 | sed -r 's/_[^_]+$//' | sed -r 's/-([^-]+)$/\1/')" DOWNLOAD="$(echo $1 | sed s/stahni/stahnout/)" echo -n Getting SID... SID="$( curl -I --user-agent "$UA" "$1" 2>/dev/null | grep -Po '(?<=SID=)[^;]+' )" if [ -z "$SID" ]; then echo " :(" exit 1 fi echo " done: $SID" countDown curl --user-agent "$UA" \ --output "$OUTPUT" \ --cookie SID="$SID" \ --referer "$1" \ "$DOWNLOAD"
wget -c -i links.txt --http-user=USERNAME --http-password=PASSWORD
[maros@wl-500gp root]$ wc -h wc: illegal option -- h BusyBox v1.1.3 (2007.01.01-14:37+0000) multi-call binary Usage: wc [OPTION]... [FILE]...A nainstalovat plnohodnotný wget taky není žádný problém:
#ipkg install wget-sslAktuální verze je 1.10.2-3. To je myslím dost nové
Mam BusyBox v1.1.3 (2006.06.29-17:07+0000), to je trosku starsi. Myslim, ze verze firmwaru ma na konci 7f, v dobe, kdy jsem to instaloval, byla posledni stable.
Tu anabazi s wget tam mam proto, ze to bude fungovat i bez ipkg (staci jedna binarka). Je pravda, ze potom nemas ani screen a nemohl by ses jenom pripojit, pustit stahovani a zase se odpojit. Samozrejme, ze ipkg je mocny nastroj a uz se chystam zprovoznit nahravani z internetovych radii pomoci streamripper (skript mam, jenom vyzkousim, jestli funguje).
[maros@wl-500gp root]$ type wget wget is a tracked alias for /opt/bin/wget [maros@wl-500gp root]$ ipkg files wget-ssl Package wget-ssl (1.11.4-1) is installed on /opt/ and has the following files: /opt/bin/wget /opt/man/man1/wget.1 /opt/etc/wgetrc Successfully terminated. [maros@wl-500gp root]$ wget --version GNU Wget 1.11.4 Copyright (C) 2008 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://www.gnu.org/licenses/gpl.html>. This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Originally written by Hrvoje Niksic . Currently maintained by Micah Cowan . [maros@wl-500gp root]$