Spolek OpenAlt zve příznivce otevřených řešení a přístupu na 211. sraz, který proběhne v pátek 19. září od 18:00 ve Studentském klubu U Kachničky na Fakultě informačních technologií Vysokého učení technického na adrese Božetěchova 2/1. Na srazu proběhne přednáška Jiřího Eischmanna o nové verzi prostředí GNOME 49. Nemáte-li možnost se zúčastnit osobně, přednáškový blok bude opět streamován živě na server VHSky.cz a následně i zpřístupněn záznam.
Microsoft se vyhnul pokutě od Evropské komise za zneužívání svého dominantního postavení na trhu v souvislosti s aplikací Teams. S komisí se dohodl na závazcích, které slíbil splnit. Unijní exekutivě se nelíbilo, že firma svazuje svůj nástroj pro chatování a videohovory Teams se sadou kancelářských programů Office. Microsoft nyní slíbil jasné oddělení aplikace od kancelářských nástrojů, jako jsou Word, Excel a Outlook. Na Microsoft si
… více »Samba (Wikipedie), svobodná implementace SMB a Active Directory, byla vydána ve verzi 4.23.0. Počínaje verzí Samba 4.23 jsou unixová rozšíření SMB3 ve výchozím nastavení povolena. Přidána byla podpora SMB3 přes QUIC. Nová utilita smb_prometheus_endpoint exportuje metriky ve formátu Prometheus.
Správcovský tým repozitáře F-Droid pro Android sdílí doporučení, jak řešit žádosti o odstranění nelegálního obsahu. Základem je mít nastavené formální procesy, vyhrazenou e-mailovou adresu a být transparentní. Zdůrazňují také důležitost volby jurisdikce (F-Droid je v Nizozemsku).
Byly publikovány informace o další zranitelnosti v procesorech. Nejnovější zranitelnost byla pojmenována VMScape (CVE-2025-40300, GitHub) a v upstream Linuxech je již opravena. Jedná se o variantu Spectre. KVM host může číst data z uživatelského prostoru hypervizoru, např. QEMU.
V červenci loňského roku organizace Apache Software Foundation (ASF) oznámila, že se částečně přestane dopouštět kulturní apropriace a změní své logo. Dnes bylo nové logo představeno. "Indiánské pírko" bylo nahrazeno dubovým listem a text Apache Software Foundation zkratkou ASF. Slovo Apache se bude "zatím" dál používat. Oficiální název organizace zůstává Apache Software Foundation, stejně jako názvy projektů, například Apache HTTP Server.
Byla vydána (𝕏) srpnová aktualizace aneb nová verze 1.104 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.104 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.
Spotify spustilo přehrávání v bezztrátové kvalitě. V předplatném Spotify Premium.
Spoluzakladatel a předseda správní rady americké softwarové společnosti Oracle Larry Ellison vystřídal spoluzakladatele automobilky Tesla a dalších firem Elona Muska na postu nejbohatšího člověka světa. Hodnota Ellisonova majetku díky dnešnímu prudkému posílení ceny akcií Oraclu odpoledne vykazovala nárůst o více než 100 miliard dolarů a dosáhla 393 miliard USD (zhruba 8,2 bilionu Kč). Hodnota Muskova majetku činila zhruba 385 miliard dolarů.
Bylo vydáno Eclipse IDE 2025-09 aneb Eclipse 4.37. Představení novinek tohoto integrovaného vývojového prostředí také na YouTube.
Ebuild je speciální skript v bashi používaný balíčkovacím systémem Gentoo Linuxu - Portage. Obsahuje popis balíčku, licenci, adresu ke zdrojovým kódům, instrukce, jak je rozbalit a případně opatchovat, zkompilovat a nainstalovat. Musí být uložen v kódování UTF-8.
Může mít opravdu mnoho nejrůznějších podob, ale nejprve si ukážeme jeden z jednodušších:
# Copyright 1999-2006 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: \ # /var/cvsroot/gentoo-x86/x11-themes/ethemes/ethemes-0.16.8.ebuild, \ # v 1.1 2006/08/28 06:14:05 vapier Exp $ DESCRIPTION="Meta package for all the official Enlightenment themes" HOMEPAGE="http://www.enlightenment.org/" SRC_URI="" LICENSE="BSD" SLOT="0" KEYWORDS="alpha amd64 hppa ia64 ppc ppc64 sh sparc x86" IUSE="" DEPEND="x11-themes/etheme-BlueSteel x11-themes/etheme-BrushedMetal-Tigert x11-themes/etheme-Ganymede x11-themes/etheme-ShinyMetal"
Na začátku každého ebuildu z Portage najdete tři zakomentované řádky, kterých si vůbec nemusíte všímat: první je copyright, druhý licence a o třetí se stará CVS, takže je nejlepší, když se tam nechá jen "# $Header: $
".
V tomto článku se nebudu zabývat nastavením Portage; jen vysvětlím, co znamenají proměnné, o kterých se později zmíním.
Proměnná | Popis |
PORTDIR |
Adresář, ve kterém se nachází strom Portage. Výchozí hodnota je /usr/portage . Změnit ji můžete například podle FAQ: Jak přesunout Portage?. |
PORTDIR_OVERLAY |
Adresář(e), kam patří ebuildy buď vaše vlastní nebo neoficiální od třetích stran. |
PORTAGE_TMPDIR |
Dočasný adresář pro Portage. Výchozí hodnota je /var/tmp . |
Naše ebuildy určitě nebudeme ukládat do hlavního stromu Portage, tedy ${PORTDIR}
, protože by se za prvé míchaly mezi oficiální ebuildy a za druhé byste o ně hned při další synchronizaci přišli. Patří do adresáře, který si nadefinujete zmiňovanou proměnnou PORTDIR_OVERLAY
v souboru /etc/make.conf
.
Nyní je čas zvolit pro náš ebuild vhodnou kategorii ze seznamu dostupném v souboru ${PORTDIR}/profiles/categories
. Pokud by žádná nevyhovovala, nic vám nebrání vytvořit si kategorii vlastní - potom je ale třeba vytvořit soubor profiles/categories
i v overlayi a zapsat ji tam. Název kategorie může obsahovat malá písmena a-z a pomlčky.
V kategorii si vytvoříme adresář, který bude nést název balíčku. Je vhodné vyhnout se velkým písmenům, přestože je lze použít. Název může obsahovat, stejně jako kategorie, a-z, pomlčky a navíc ještě čísla 0-9, plus a podtržítko.
V tomto adresáři konečně vytvoříme ebuild. Jeho název musí obsahovat název balíčku ve tvaru, který jsme zvolili pro název adresáře. Následuje pomlčka a za ní verze a za ní případně další pomlčka a revize. Nakonec patří přípona '.ebuild
', takže například nazev-baliku-1.0-r1.ebuild
.
Verze se může skládat z jednoho nebo více čísel oddělených tečkou (např. 1.2.3 nebo 20070205). Poslední číslo může být následováno písmenem (např. 1.2b - nepoužívat b
místo _beta
!) nebo některým z řetězců vypsaných v následující tabulce. Řetězce jsou vypsány v pořadí, jak je bere Portage, od nejnižší verze po nejvyšší.
Řetězec | Význam |
_alpha | Alpha verze |
_beta | Beta verze |
_pre | Preview verze |
_rc | RC (release candidate) verze |
(nic) | Normální verze |
_p | Patch level |
Úplně nakonec patří revize. Pár příkladů, jak můžou vypadat takové verze: 0.1_alpha20, 5.0_pre12-r8, 2.3_rc5-r2, 3.6b-r5.
Následující proměnné jsou definovány jen pro čtení. Je vhodné je používat namísto zapisování verzí atp. "napevno". Vždy je totiž cílem to, aby pokud možno stačilo ebuild jen přejmenovat na novou verzi a on bez zásahů rovnou fungoval. To samozřejmě není vždy možné, ale často ano.
Proměnná | Popis |
P | Název a verze balíčku bez revize, například ethemes-0.16.8 . |
PN | Název balíčku, například ethemes . |
PV | Verze balíčku bez revize, například 0.16.8 . |
PR | Revize balíčku, nebo r0 , když nemá revizi. |
PVR | Verze balíčku s revizí, například 0.16.8 (zde bez revize, protože žádnou nemá). |
PF | Název, verze a revize balíčku, například ethemes-0.16.8-r0 . |
A | Všechny zdrojové soubory pro balíček (kromě těch, které jsou podmíněny USE flagy, které máte zakázány - o podmínkách si řekneme později). |
CATEGORY | Kategorie balíčku, například x11-themes . |
FILESDIR | Cesta k podadresáři files/ v adresáři s ebuildem (v tomto případě běžně /usr/portage/x11-themes/ethemes/files ), který je často využíván pro malé patche a soubory. Má hodnotu "${PORTDIR}/${CATEGORY}/${PN}/files ". |
WORKDIR | Pracovní adresář s výchozí hodnotou "${PORTAGE_TMPDIR}/portage/${PF}/work ". |
T | Dočasný adresář, který ebuild může využívat. Má hodnotu "${PORTAGE_TMPDIR}/portage/${PF}/temp ". |
D | Cesta k dočasné instalační cestě. Sem se nejprve nainstaluje každý ebuild, a teprve když projde sandboxem (tzn. nepokouší se nic smazat atp.), tak je nainstalován do ${ROOT} . |
ROOT | Cesta ke kořenovému adresáři systému. Vždy připojte na začátek cesty - vyjímkou je jen proměnná "${D} ". |
Proměnná | Popis |
DESCRIPTION | Stručný popis balíčku. |
HOMEPAGE | Domovská stránka balíčku. |
SRC_URI | Adresa ke zdrojovým kódům. Nepoužívejte v ní proměnnou HOMEPAGE . |
LICENSE | Pod jakou je balíček vydán licencí - název musí přesně (včetně velikosti písmen) odpovídat souboru v adresáři "${PORTDIR}/licenses ". |
SLOT | Určuje, zda bude možné instalovat více verzí paralelně. O slotování si povíme více později. |
KEYWORDS | Architektury, na kterých se balíček sestaví a funguje. Pokud ještě není řádně otestovaný, přidá se před název architektury tilda, takže například ~amd64 . |
IUSE | Všechny USE flagy, které budou u balíčku dostupné. |
Proměnná | Popis |
S | Cesta k dočasnému adresáři s rozbalenými zdrojáky. Výchozí hodnota je "${WORKDIR}/${P} " a ebuild by ji neměl předefinovávat, pokud se nemění - to záleží na názvu adresáře, který se rozbalí ze zdrojáků: pokud je ve tvaru "${P} ", pak není třeba tuto proměnnou definovat. |
DEPEND | Závislosti, které jsou nutné pro sestavení balíčku. |
RDEPEND | Závislosti, které jsou nutné pro spuštění balíčku. |
PDEPEND | Závislosti, které musí být nainstalovány až po balíčku. Zpravidla je vhodné se používání PDEPEND vyhýbat a používat RDEPEND , kromě případů, kdy by to způsobilo kruhové závislosti. |
RESTRICT | Vlastnosti oddělené mezerou, které budou pro daný balíček zakázány. O těch se zmíním jindy. |
PROVIDE | Tato proměnná by měla být použita jen v případě, když balíček poskytuje virtuální cíl. Například blackdown-jdk a sun-jdk poskytují virtual/jdk . Balíčky potom mohou záviset na virtual/jdk a není třeba je pokaždé vyjmenovávat. |
Příští díl bude o funkcích, eclass a příkazech.
Nástroje: Tisk bez diskuse
Tiskni
Sdílej:
že ebuild je většinou v 7 bitA David hovoří o Ebuildech takže v čem jsou Changelogy je zcela irelevantní. Ale i kdyby byl jen jeden jediný ebuild uložen v kódování jiném než UTF8 a fungovalo to tak to znamená, že ebuildy v UTF8 být nemusí. A vzhledem k tomu že jich je většina v 7bit kódování tak jsou mé argumenty i podložené.
<|>pka
, což daném kódování může znamenat "stopka", a ono to bude fungovat :P Samozřejmě např. pro zobrazování ebuidu bude potřeba širší podpora daného kódování v systému.
Třeba můžeš zcela bezpečně do komentáře napsat // <|>pka, což daném kódování může znamenat "stopka", a ono to bude fungovat :PTo asi těžko, kódování dokumetu by bylo stále 7 bit ASCII. Protože kdyby platilo to co říkáš tak je html kódování což neplatí. HTML je značkovací jazyk. Kódování je o vrstvu níže. TZN můžu nadefinovat hexadeximální hodnotě 6F což je v ASCII
o
třeba význam stopka
. A pokud bych zahrnul podporu pro takovéto kódování do nějaké aplikace tak kdybych otevřel nějaký soubor kde by se vyskytovaly hodnoty 6F tak by se místo ASCII o zobrazilo stopka. 64686F6A
a ve druhém FFFE610068006F006A00
. Jestli alespoň poznáš které je které. A rozdíl mezi 7bit ASCII a UTF8 je hlavně tento. Slovo "ahoj" v HEXA je v jednomMam pocit, ze si tu nekdo plete UTF-8, UTF-16 a jeste navic do toho micha BOM... Byte Order Mark neni nutny a ASCII znaky v UTF-8 zabiraji jeden bajt.64686F6A
a ve druhémFFFE610068006F006A00
.
je odolné proti poškození dat (při náhodném porušení jednoho znaku je stále možné přečíst zbytek řetězce)Stejne jako utf-8
RESTRICT="nomirror"
RESTRICT="fetch"
No, spíš bych používal
- stahovanie z mirrorov a povolit iba stahovanie z oficialnej stranky
RESTRICT="nomirror"
RESTRICT="mirror"
, to je i v manuálu a je to logičtější (protože RESTRICT zakazuje Ano, o tom píšu v druhém díle...
- stahovanie odkialkolvek, uzivatel si musi subor stiahnut sam (ebuild mu ponukne adresu, teda za predpokladu, ze sa dany SW stiahnut da)
RESTRICT="fetch"
Bych neřekl, že je to logičtější. Restrikce = omezení, okleštění, snížení, zmenšení počtuNo? Omezení mirrorů
/etc/make.conf
PROVIDE -- nepouzivaji se ted spise "new-style virtuals", tedy "normalni balicky" typu virtual/*?Používá se obojí:
$ grep PROVIDE /portage/net-print/cups/cups-1.2.7.ebuild PROVIDE="virtual/lpr"Ale virtual/* balíčky jsou podle mě určitě lepší...
Popis promenne $A neni jednoznacny -- ve skutecnosti jde (podle manualu) o vsechny zdrojove kody, ktere aktualne nastavena kombinace USE flagu vyzaduje pro kompilaci; mluvit v tomto kontextu o "zakazanych USE" zavani maskovanim USE flagu, coz mate.Kdybych měl na mysli maskované USE, napsal bych to. Jak mám říkat "zakázaným" USE flagům, aby to nebylo matoucí? Vypnuté?
Tedy neco jako DEPEND=">=media-libs/libtheora-1.0_alpha7 encode".
DEPEND="encode? ( >=media-libs/libtheora-1.0_alpha7 )"
Paklize vyse uvedene zavislosti neni mozne deklarovat, jak se k tomu stavi spravci portage? Nechavaji to na uzivateli (einfo) nebo vyvtareji ebulildy typu media-libs/libtheora-encode a media-libs/libtheora, aby mohli zavislost zapsat?Ano, USE-based dependencies je jedno z omezeni Portage, ktere celkem dost boli. Resi se to osklivym hackem, kdy se pred zacatkem instalace samotneho baliku zjisti, jestli je nejaky balicek sestaven s danym USE, a pokud ne, instalace "chcipne". Funguje to, ale problem je ten, ze tenhle test neprobiha pri sestavovani zavislosti, ale az tesne pred kompilaci. Kazdopadne se na tomhle pracuje, podporou ve stabilni verzi Portage si nejsem jisty, ale je to jedna z veci, ktere "drive nebo pozdeji" budou hotove. Za nekolik let pouzivani jsem na podobne problemy narazil v nekolika malo pripadech, takze si dovolim tvrdit, ze jde spise o "problem cistoty designu" a ne o nejaky realny showstopper.