Stát Kalifornie zažaloval výrobce 3D tiskových filamentů Polymaker. Vrchní soud San Diego County tvrdí, že firma propagací svých výrobků mezi příznivci 3D tištěných zbraní podporovala výrobu takzvaných 'ghost guns' (DIY zbraní) a že její PLA filament pro 3D tiskárny lze za těchto okolností považovat za součást určenou k výrobě střelné zbraně. Žaloba požaduje mimo jiné finanční sankce a soudní zákaz činnosti, Polymaker se hájí tím, že filament je běžný a sám o sobě legální produkt. Celý text žaloby (PDF na Google Drive).
V červnu byla představena aplikace Myna pro převod řeči na text v prostředí desktopu Ubuntu. Včera byla Myna zpřístupněna širší komunitě Ubuntu formou technologické ukázky dostupné v Ubuntu 24.04 LTS, Ubuntu 26.04 LTS a Ubuntu 26.10 s GNOME na Waylandu.
Ubuntu 27.04 bude Tenacious T-Rex.
Byla vydána nová verze 2026.4.0 "Never-slop" svobodného softwaru ScummVM (Wikipedie) umožňujícího bezproblémový běh mnoha klasických adventur na zařízeních, pro které nebyly nikdy určeny. Přehled novinek v poznámkách k vydání a na GitHubu. ScummVM oslavil 25 let. Verze 0.0.1 vyšla 8. října 2001.
Kanadský vývojář Anthony Sistilli vytvořil ironický DIY projekt parodující kamerové systémy Flock, s cílem názorně demonstrovat rizika masového sledování jaké provozují tyto komerční ALPR systémy. Z levné IP kamery a vlastního ML softwaru (napsaného s pomocí SI circa za 20 minut, kód se mi bohužel nepodařilo dohledat) běžícího v laptopu sestavil jednoduchý systém, který detekuje výhradně policejní vozidla, zaznamenává jejich SPZ a
… více »Část údajů uživatelů internetového supermarketu Rohlík byla odcizena. Kyberútočníci napadli nástroj zákaznické podpory Rohlíku, odcizili tak jména, e-mailové adresy, v některých případech také telefonní čísla nebo přepisy komunikace mezi klienty a zákaznickou podporou. Rohlík incident nahlásil příslušným orgánům a přijal příslušné opatření, aby zamezil podobným případům v budoucnosti, uvedla firma.
Aplikace eDoklady fungovala v obou volebních dnech stabilně a prakticky bez front. Digitální a informační agentura (DIA) odhaduje, že se digitálním dokladem prokázalo více než 100.000 voličů. Aplikaci si před volbami či během nich aktualizovalo 247.517 uživatelů. Nových registrací bylo 19.431 a do aplikace se přihlásilo 357.879 lidí. Největší nápor přišel bezprostředně po otevření volebních místností mezi 14. a 16. hodinou, kdy si
… více »Začal semestr, začal i podzim a kromě hub rostou jako po dešti i veřejné dílny v Praze. Nedávno strahováci referovali o hackerspacu Bordel, nyní se otevřela dílna Dejvice Lab jen kousek od ČVUT. Na blížící Virtuální Bastlírně tak uslyšíte nejen report z návštěvy dílny HWLab, ale i řadu novinek, událostí a úsměvných momentů, které se za poslední měsíc ve světě techniky, ale i vědy udály. Připojte se tedy již v úterý 13.10. od 20:00 a zapojte se do
… více »Byl vydán LineageOS 24 (Mastodon). LineageOS (Wikipedie) je svobodný operační systém pro chytré telefony, tablety a set-top boxy založený na Androidu. Jedná se o nástupce CyanogenModu. LineageOS 24 je založený na Androidu 17.
Společnost Valve publikovala na svém GitLabu nákresy a schémata zapojení headsetu Steam Frame. Pro nekomerční účely.
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.
A rozdíl mezi 7bit ASCII a UTF8 je hlavně tento. Slovo "ahoj" v HEXA je v jednom
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.64686F6Aa ve druhémFFFE610068006F006A00.
Notepad tomu říká „Kódování Unicode“, musel jsem experimentálně zjistit, co se tím vlastně rozumí: UTF-16 LE.
BTW, je úžasné, jak snaha o kompromis (?) může spojit to nejhorší z obou světů.
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é?
).
Každopádně nikdo tě ebuildy dělat nenutí...

)
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.