Homebrew (Wikipedie), správce balíčků pro macOS a od verze 2.0.0 také pro Linux, byl vydán ve verzi 4.5.0. Na stránce Homebrew Formulae lze procházet seznamem balíčků. K dispozici jsou také různé statistiky.
Byl vydán Mozilla Firefox 138.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 138 je již k dispozici také na Flathubu a Snapcraftu.
Šestnáctý ročník ne-konference jOpenSpace se koná 3. – 5. října 2025 v Hotelu Antoň v Telči. Pro účast je potřeba vyplnit registrační formulář. Ne-konference neznamená, že se organizátorům nechce připravovat program, ale naopak dává prostor všem pozvaným, aby si program sami složili z toho nejzajímavějšího, čím se v poslední době zabývají nebo co je oslovilo. Obsah, který vytvářejí všichni účastníci, se skládá z desetiminutových
… více »Richard Stallman přednáší ve středu 7. května od 16:30 na Technické univerzitě v Liberci o vlivu technologií na svobodu. Přednáška je určená jak odborné tak laické veřejnosti.
Jean-Baptiste Mardelle se v příspěvku na blogu rozepsal o novinkám v nejnovější verzi 25.04.0 editoru videa Kdenlive (Wikipedie). Ke stažení také na Flathubu.
TmuxAI (GitHub) je AI asistent pro práci v terminálu. Vyžaduje účet na OpenRouter.
Byla vydána nová verze R14.1.4 desktopového prostředí Trinity Desktop Environment (TDE, fork KDE 3.5, Wikipedie). Přehled novinek i s náhledy v poznámkách k vydání. Podrobný přehled v Changelogu.
Bylo vydáno OpenBSD 7.7. Opět bez písničky.
V Tiraně proběhl letošní Linux App Summit (LAS) (Mastodon). Zatím nesestříhané videozáznamy přednášek jsou k dispozici na YouTube.
Dear princess Luna....
Dnes si krátce povíme něco o chrootu a ukážeme si, jak v něm jednoduše (a nebezpečně) spustit grafickou aplikaci
O chrootu jste jistě již mnohé slyšeli, ale možná jste s ním stejně jako já neměli žádné zkušenosti a báli se o svůj odladěný systém. Mohu vás ujistit, že se není čeho bát a vše jde až podezřele hladce.
K čemu je chroot vlastně dobrý? Zjednodušeně řečeno tím vytvoříme systém v systému, jakousi matrjošku Někteří to považují za bezpečností prvek (tím může správně nastavený chroot opravdu být), jiní díky němu testují aplikace aniž by si zaneřádili systém a někteří (já) jej používají jen k tomu, aby jim na 64-bitovém systému fungovala 32-bitová aplikace. Proč? V dnešní době 64-bitových aplikací a 32-bitových knihoven?
Když jsem před rokem studoval na střední škole, snažil jsem se v Debianu zprovoznit program Eagle. Pokud se podíváte sem http://packages.debian.org/unstable/electronics/eagle, tak si můžete všimnout paradoxního vývoje - nejstarší verze 5.10 podporuje jak i386, tak AMD64, zato verze 5.12 a 6.3 už podporuje jen i386. Tehdy Eagle určitou dobu fungoval, ale brzy se díky balíčkovacímu systému záhadně odporoučel a odmítal se nainstalovat. Pokud se nepletu, tak v repozitáři byl balík eagle verze 5.12, ale eagle-data jen verze 5.10. Ruční stažení eagle verze 5.10 a uzamknutí pomáhalo, ale brzy začal nějak kolidovat s aktualizací systému a já raději zvolil aktuálnější systém, než funkční Eagle. Verze z cadsoft.de trpěla nějakou chybou a ani po měsíci se nic nezměnilo i přesto, že chyba byla mnoha lidmi nahlášena a řešena na různých fórech. K mojí smůle mi ani jedno z řešení nepomáhalo. Mimochodem, některé aplikace dokážou údajně vzdorovat i 32-bitovým knihovnám a chroot je jediné řešení, jak s nimi pracovat na systému, pro který nejsou určeny.
Uplynul rok a já dostal opět sto chutí překreslit několik schémat z hlavy do Eagle (memory dump mozku by byl někdy opravdu neocenitelný). Ale jak na to? Používám Debian testing x86_64 a Eagle je jen pro i386. Dříve jsem zkoušel vnutit instalaci 32-bitového balíčku na 64-bitový systém, instalovat 32-bitové knihovny, upravoval podle různých fór konfiguraci, ale ani tak nedospěl k funkčnímu výsledku. Rozhodl jsem se, že zvolím jiné řešení a před pár dny mě do očí praštilo to známé-neznámé slovo. Chrocht....totiž chroot
Jako vždy jsem se poradil s vyhledávačem Google a k mému překvapení našel několik odlišných a nejednou i protichůdných návodů. Ve většině návodů bylo potřeba upravovat soubor /etc/fstab a protože se tím dá hodně zkazit, hledal jsem dál až jsem našel tento návod http://www.debian-administration.org/articles/566.
Jednoduchý, srozumitelný, ale (jako většina nalezených návodů) poměrně starý. Naštěstí ho to nijak nepoznamenalo a funguje doteď. Připraveni? Jdeme na to!
[Protože jsem ve svém PC zapsán jako "dreit", budu tak zapsán i v návodu - všechny výskyty slova "dreit" přepište svým uživatelským jménem]
Jako první si nainstalujeme balíčky schroot a debootstrap:
sudo apt-get install schroot debootstrap
Poté upravíme soubor /etc/schroot/schroot.conf, konkrétně jen odkomentujeme vše v sekci [sid] (samozřejmě pokud chceme Debian Sid) a nastavíme správně uživatele, u mě to vypadá takto:
[sid]
description=Debian sid (unstable)
directory=/srv/chroot/sid
users=dreit
groups=users
root-groups=root
aliases=unstable,default
Dále si vytvoříme adresář, který se pro náš chroot bude chovat jako kořenový a je daný konfiguračním souborem výše. Přitom rovnou vytvoříme i domovský adresář uživatele, který bude chroot používat (v mém případě se totiž nevytvořil a chroot proto nešel spustit):
sudo mkdir -p /srv/chroot/sid/home/dreit
Nyní necháme debootstrap vše nainstalovat na první pohled poměrně složitým příkazem:
sudo debootstrap --arch i386 sid /srv/chroot/sid http://debian.mirror.dkm.cz/debian
Přepínač --arch udává architekturu, kterou chcete mít v chrootu a "sid" udává verzi systému (musí existovat na zrcadle). Dále je zde cesta k adresáři, kde chceme chrootovat a nakonec nepovinný parametr - adresa zrcadla. Pokud jej nezadáte, bude debootstrap stahovat z přednastaveného zrcadla (v mém případě opravdu pomalé).
Debootstrap bude chvíli chroupat a po jeho úspěšném ukončení se můžete podívat do adresáře /srv/chroot/sid, kde spatříte kompetní adresářovou strukturu chrootovaného systému. Právě nadešel čas na poslední příkaz, kterým se dostaneme dovnitř. Připraveni? Tady je:
sudo schroot -c sid -p
Právě jste si vytvořili systém v systému, který můžete do jisté míry ničit podle svých představ. Pokoušet příkaz rm -rf / vám ale nedoporučuji, mým hlavním cílem bylo jen zprovoznení programu, nikoli jeho zabezpečení před stupidním uživatelem
A když už ten hezký chroot máme, tak jej i nějak využijeme. Můžeme zde napříkad na zkoušku instalovat různé aplikace (Steam, Eagle, webové prohlížeče) a v případě potřeby vše krásným rm -rf /srv/chroot/sid uklidit Já chtěl ale pracovat v Eagle a to pokudmožno v poslední verzi. Rozšířil jsem tedy soubor /etc/apt/sources.list o slůvka non-free a contrib příkazem
echo -e 'deb http://debian.mirror.dkm.cz/debian/ testing main non-free contrib\n' > /etc/apt/sources.list
a příkaz následoval typickým
apt-get update
V případě Eagle 6 bylo nutné stáhnout balíček ze stránky http://packages.debian.org/experimental/i386/eagle/download a nainstalovat jej:
wget http://ftp.cz.debian.org/debian/pool/non-free/e/eagle/eagle_6.3.0-1_i386.deb
dpkg -i eagle*.deb
Dostal jsem typickou hlášku o nesplněných závislostech a opravil je příkazem mým oblíbeným příkazem:
apt-get -f install
Pokud vše proběhlo dobře, nezbývá než spustit Eagle (pokud ne, můžete zkusit přidat zrcadla). Napíšeme eagle, potvdíme enterem...ouha:
eagle: cannot connect to X server :0
Řešení je naštěstí snadné, stačí spustit jednoduchý příkaz, který udělí vyjímku (nikoli v chrootu, ale v hostitelském systému). Bohužel po restartu jej musíte zadat znovu, ale při občasném použití to jistě nebude moc vadit. Nezapomeňte napsat na konci dvojtečku.
xhost +local:
Nyní už se Eagle bez problému spustí a může si páchat co se mu zachce - je zavřený v chrootu a teoreticky by neměl mít kam utéct. Samozřejmě v praxi je lepší poradit se s někým zkušenějším před ostrým nasazením
Tiskni
Sdílej:
tím může správně nastavený chroot opravdu býtOsobně bych tomu říkal spíš kombinace chrootu s dalšími prvky. A i tak jsou řešení založená na chrootu do jisté míry kritizována za to, že zabezpečnují jednotlivé vlastnosti systému a tudíž je velká šance, že se na něco zapomene. Narozdíl třeba od zabezpečení pomocí různých selinuxů a podobných, kde především řeší, co aplikace vůbec může, ne co explicitně nesmí. To jen poznámka naokraj.
Bezpečností se nezabývám, snažil jsem se spíš jen poznamenat, že to opravdu jde. Koukal jsem na spouštění SSH daemonů v chrootu aby připojený uživatel nemohl utíkat pryč a to by se svým způsobem za bezpečnostní prvek dalo považovat. Samozřejmě při dostatku času a prostředků se dá zlomit naprosto cokoli
To mě přivádí na myšlenku, že bych vlastně v chrootu mohl rozjet SSH daemona na vyšším portu (třeba 8022) pro "veřejnost" a ten pustit routerem ven, ale zároveň mít daemon běžící v hostitelském systému na portu 22 jen pro vnitřní síť
Tak to nezní moc příjemně, děkuji za osvětlení
Koukal jsem na spouštění SSH daemonů v chrootu aby připojený uživatel nemohl utíkat pryč a to by se svým způsobem za bezpečnostní prvek dalo považovat.To už je ale kombinace dvou prvků. Nejprve se provede chroot a následně se změní uid na obyčejného uživatele a nakonec to celé funguje díky tomu, že obyčejný uživatel nemá možnost provádět některé privilegované operace. Navíc ten chroot pro SSH má bezpečnostní smysl pouze kvůli špatně nastaveným právům, popřípadě jiným bezpečnostním problémům, které ten systém má. Jenže v chrootu nefunguje nic, co tam nedáš. Když se chroot zkombinuje s izolací ostatních systémových prostředků, tak se tomu potom říká kontejnerová virtualizace. Stačí si najít OpenVZ, LXC a podobné.
yaourt -S eagle
Targets (1): eagle-6.4.0-2
Funguje, nepada. Na 64bitu s 32bitovyma knihovnama ;)
Včera jsem to probíral s partou linuxáků na IRC a během chvíle se u mě nahromadily screenshoty funkčního Eagle snad na všech možných distribucích Že Eagle nefungoval před rokem samozřejmě neznamená, že nejde teď - chtěl jsem si ale vyzkoušet něco nového a Eagle byla perfektní záminka
Navíc teď není problém Eagle rychle uklidit
Jinak fakt peknej a citelnej blogpost, klidne to nekdy zopakuj
Doufám, že to nebylo myšleno ironicky Měl jsem v plánu další díl o RaspberryPi, ale nefunkčnost scanneru mě opravdu trápí a mám sto chutí nahradit RaspberryPi původním x86 serverem
Ale jestli se k tomu dokopu, tak ten návod dopíšu (včetně skriptů co jsou k tomu potřeba) a na konci se zeptám, jestli někdo neví co by šlo dělat s tím scannerem. Když na skle nic není, tak občas skenuje, jinak popojede do čtvrtiny a tam se zasekne s chybovou hláškou (normálně dojede do čtvrtiny, o kousek se vrátí a tak po čtvrtinách až do konce).
Tak to mě opravdu těší, děkuji Trochu jsem se bál, co z toho vyleze, protože jsem to psal navečer a v půlce jsem se úplně ztratil
$ sandbox -t sandbox_web_t -H sandbox/home/ -T sandbox/tmp/ -W /usr/bin/startkde -X firefoxjaky vyhoda a zaroven i nevyhoda je to, ze se to pak nedostane ani X bufferu.
Myslim, že to ještě nemá tu úroveň, kterou by to muselo mít. Ostatně jsem popsal to, co jsem dělal cca hodinu podle návodu. Jestli se vyvede další díl o RaspberryPi tak, jak mám v plánu, to to bude ještě o tak 20% lepší
V tom případě je to pro mě opravdová pocta, děkuji
Děkuji mnohokrát
Dobře, jakmile se mi povede něco sepsat a bude to dávat trochu smysl, tak se ozvu