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.
Aneb - když si BFU hraje, končí to nějak takhle. Vytvořil jsem svůj první sh script, který se postará o startx a přitom nabídne i výběr sezení.
Po několikaletém používání Grafického Správce Přihlášeni, jsem se dostal do stadia, že jsem jej opustil a začal se přihlašovat v textovém režimu. Nicméně mi to nestačilo, protože jsu člověk, který má rád změnu a nevydržím dlouho u jednoho prostředí, tak jsem si vytvořil script na spouštění sezení.
Než mě začnete kamenovat, že jsem objevil Ameriku a že to je na ... vysvětlím své počínání, a protože mám velké neznalosti co se týče růrných souvislostí, pravidel (standartů) a závislostí, poprosím Vás, zkušené a ostřílené uživatele pouze o zkontrolování a případné upozornění na problémy, které by mohli nastat.
Musím podotknout, že jsem to pořádně testoval a funguje přesně tak, jak mi to vyhovuje. Jediný problém mám s ukončením vzdáleného přístupu, protože GDM na vzdáleném PC vytváří jakousi smyčku, stále se opakující.
První par let, co jsem dostal PC s Linuxem jsem stále měnil Sezení a programy. Nebyl jsem schopen zpracovat to velké množství programů a u jednoho mi chybělo tohle a druhého zase tamto. Výsledek byl, že jsem měl ve starém slabém PC oba giganty (KDE a GNOME) a lítal jsem od programu k programu. Usoudil jsem, že to takhle nejde a proto jsem udělal jednu velkou čáru za KDE.
A proto má KDM na můj počítač zákaz vstupu.
Velmi dlouho jsem vystačil s GDM, ale jednoho dne po aktualizaci se nějak po... a ztratil jsem možnost výběru sezení, vzdáleného přihlášení a přihlášení v okně.
bay bay
Tak jsem se začal ohlížet po jiných správcích, ale jeden neumí výběr sezení a jinaj zase nepodporuje XDMCP. Navíc jsem už dostal chuť se něco dovědět o sh scriptech, protože od té doby co mám GNU/Linux, tak na ně stále narážím. A to je důvod proč vzniklo tohle.
Script umí nabídnout a provést výběr sezení, nastavení defaultního sezení a přihlásit se na vzdálený počítač.
!!!Pro jeho činnost je nutné aby nebyl spuštěn Xserver a žádný graf. Správce. Je nutné se přihlašovat v textovém režimu a navíc je nutné se přihlašovat na prvním terminálu. Je tam podmínka jsou-li X-ka neběžící a jsme-li na tty1.
Funguje to jednoduše. v souboru ~/.muj_start.conf jsou uložena jednotlivá sezení a příkaz(y), které se mají provést pro jejich spuštění. Nemusíme spouštět celé sezení, umí to spustit i jedotlivé aplikace (správce oken + něco + něco). Já mám něco takového na xfce. Nespouštím celé sezení, ale jen něco. A jako poslední se spustí emulátor terminálu terminal, který když zavřu, tak se zastaví X-ka a já se vrátím do textového režimu.
Když se script spustí, dá vám 3 sekundy na to, aby jste stiskly "c". Pokud jej nestisknete, nastartuje se default sezení. Když ho stisknete, můžete si vybrat sezení, nebo počítač, kam se chcete pomocí XDMCP přihlásit.
script ~/.muj_start pouze nabídne výběr a zpracuje váš vstup. Následně dle vašehu vstupu případně upraví proměnou $nastartuj (důležitou pro startx) a proměnnnou $default (pokud změníme default sezení).
A v souboru ~/.xinitrc je nastaveno pouze že má číst proměné ze souboru ~/.muj_start.conf a co s nimy má udělat. V podstatě si pouze přečte $nastartuj a postupně provede jeden příkaz za druhým. Obsahuje-li $nastartuj více hodnot, tak ta co je uvedena jako první se nastartuje jako poslední s příkazem exec
Samotný popis jak script funguje je přímo v něm. To jsem si tam psal pro sebe, abych vůbec věděl, co jsem tam udělal.
!!! Jsem BFU. Nikomu to nedoporučuji požívat, pokud to zkušení uživatelé nepodpoří.
1. Do ~/.bashrc jsem přidal příkaz na spuštění mého scriptu. Takže se můj script spustí ihned po přihlášení v textovém režimu.
sh ~/.muj_start
Proměnné jsem definoval v souboru ~/.muj_start.conf a pravě zde jsou uložena Desktopová prostředí, či Správci oken a příkazy, které se mají provést pro jejich spuštění. Možná by stálo za to ještě vytvořit script na přidávání a odebírání Desktopového prostředí. Zatím se to musí provádět ručně.
~./.muj_start.conf
#
#
#~/.muj_start.conf
#
#-----------------------------------------------------------
#DESKTOPOVE PROSTREDI - SPRAVCE OKEN
#-----------------------------------------------------------
#zde pripis nove sezeni
sezeni=(gnome xfce WM openbox zachrany_terminal)
#zde je definovana promenna "sezeni", jejichz obsahem
#je "pole". tzn. Nekolik prvku "pole".
#prvek 0 je "Gnome" - volame ${sezeni[0]}
#prvek 1 je "xfce" - volame ${sezeni[1]}
#----------------------------------------
#PRIKAZ(Y) PRO START SEZENI
#----------------------------------------
#Zde definuj prikazy, ktere se nastartuji pri volbe sezeni
#!!!prikaz, ktery bude prvni v poradi se nastartuje jako posledni a pri jeho ukonceni se ukonci i X-server
xfce="terminal xfwm4 xfce4-panel xfdesktop pidgin firefox claws-mail"
gnome="gnome-session"
WM="wmaker"
openbox="openbox-session"
zachrany_terminal="xterm"
#--------------------------
#DEFAULT SEZENI
#--------------------------
#zde je nastaveno default sezeni
#tato promenna se generuje sama
default="xfce"
#------------------------------------
#VZDALENY PRISTUP
#-----------------------------------
#Zde je definovano jmeno PC a jeho IP adresa, pomoci ktere se prihlasime
XDMCP=(rapi)
rapi="X -query 192.168.1.2"
#-----------------------------------
#PRIKAZY PRO START
#----------------------------------
#Promenna ktera se generuje sama
nastartuj=(terminal xfwm4 xfce4-panel xfdesktop pidgin firefox claws-mail)
~/.muj_start
#!bin/sh
. ~/.muj_start.conf
#----------------------
#funkce kontroly
#----------------------
#K promene what priradim prvni pozicni parametr
# provedu posun poz. param. o jednu
#pro promenou $i vypisu vsechny pozicni parametry
#jestlize what se nachazi v $i, vrat pravdu
#(what jsme zadali a pro $i se vypsaly vsechny poz. param.)
#jinak vrat nepravdu
kontrola() {
what=$1
shift
for i in $@; do
[ "$what" = "$i" ] && return 0
done
return 1
}
#---------------------------------------------
#fnkce na vygenerovani $nastartuj
#---------------------------------------------
# funkce, ktera v souboru muj_start.conf upravi $nastartuj.
#Vse co je v $nastartuj mezi () nahradi.
definuj_prom() {
sed -i "s/nastartuj=\([^\)]*\)/nastartuj=\($zmena/" ~/.muj_start.conf
}
#--------------------------------------------
#funkce, ktera nastartuje xserver
#--------------------------------------------
#Funkce, ktera provede startx.
#Startx se provede pouze v okamziku, ze jsme na 1.terminalu (tty1)
#a zaroven X jeste nejedou
spustX()
if [[ -z "$DISPLAY" ]] && [[ $(tty) = /dev/tty1 ]]; then
startx &
fi
#---------------------
#provadeci script
#---------------------
#cteni vstupu uzivate po 3 sek. se samo zvoli "no"
#pri volbe "no" se provede kontrola jestli $nastartuj obahuje spravne hodnoty
#pokud ano nastartuje se default sezeni
#pokud ne, zavola se funkce zmena a hodnoty a
#$nastartuj se nahradi za ty spravne
clear
echo "Startuji X-server a default sezeni: $default"
echo "--------------------------------------------------------"
echo "Pro zmenu stiskni [ c ] - Mas na to 3 sekundy "
read -t 3 e || e="no"
if [ "$e" = "no" ]; then
if [ "${!default}" = "${nastartuj[*]}" ]; then
echo "startuji $default"
else
zmena=${!default}
definuj_prom $zmena
echo "startuji $default"
fi
spustX &
exit
fi
#vyber sezeni, nebo stroje, kam se chceme prihlasit
clear
echo "SEZENI: ${sezeni[*]}"
echo "-----------------------------"
echo "VZDALENY STROJ (ke kteremu se muzes prihlasit): ${XDMCP[*]}"
echo "-----------------------------"
echo "Cekam na vstup"
read x
#Struktura until...;do..done se provede je-li podminka nepravdiva.
#Tzn. Jestlize funkce kontrola() vrati nepravdu, ridici struktura until... se provede.
#Funkci kontrola() zavolame s parametry do kterych vlozime obsah pole $sezeni a $XDMCP
#To zajisti, ze jestli uzivatel udela preklep a zada napr. sezeni, ktere neni v promene $sezeni
#funkce kontrola vrati false a tato struktura zajisti druhy pokus.
until kontrola $x ${sezeni[*]} ${XDMCP[*]}; do
echo "Nekde jsi udelal chybu - zkus to znova"
echo "Cekam na vstup"
read x
done
# Pri vzdalenem prihlaseni se nepouzije prikaz #startx
#Proto provedu znova kontrolu vstupu a jestli uzivatel zadal jmeno jineho PC
#provede se prikaz pro prihlaseni na vzdaleny stroj
#!!!! V $XDMCP a $sezeni NESMI figurovat stejna hodnota.
#To znamena, ze nesmime pouzit pro nazev vzdaleneho stroje stejne jmeno jako pro nejake sezeni
#Jestlize nezadame jmeno PC, ale jmeno sezeni, provede se dotaz
#jestli chceme zmenit default sezeni a pokud ano
#nahradi se hodnota #default
#Pak se uz jen definuje $nastartuj a provede se #startx
if kontrola $x ${XDMCP[*]}; then
${!x} &
exit
else
echo "Chces zmenit vychozi sezeni? (yes or no) "
read y
if [ "$y" = "yes" ]; then
sed -i "s/default=\"[^\"]*\"/default=\"$x\"/" ~/.muj_start.conf
fi
zmena=${!x} #nacteni hodnoty $x do $zmena
definuj_prom $zmena
echo "startuji $x"
spustX &
exit
fi
A poslední je soubor ~/.xinitrc , který nastartuje dané sezení
~/.xinitrc
#!/bin/sh
numlockx &
. ~/.muj_start.conf
proved() {
posledni=$1
shift
while [ -n "$2" ]; do
$2 &
shift
done
exec $posledni
}
proved ${nastartuj[0]} ${nastartuj[*]}
Tiskni
Sdílej:
Neni sice tak lightweight jako qingy, ale je good.
http://www.youtube.com/watch?v=LCiFP4iXQRIJsem nejak hodne exoticky, kdyz zadne automaticke prihlasovani nepouzivam? Startuju do terminalu, prihlasim se a pro spusteni fluxboxu zadam "x", coz je zkratka pro "startx"
zadani toho x mi neprijde jako prace navic, taky se nekdy stane, ze hned fluxbox nespoustim.
Jinak tady ten skript v clanku je urcite dobra vec, me se takove jednoduche reseni libi nejvic, proste KISS.