Portál AbcLinuxu, 10. května 2025 13:21

Dotaz: Hledám přizpůsobitelné distro bez zbytečností

23.12.2015 12:06 Jiří
Hledám přizpůsobitelné distro bez zbytečností
Přečteno: 495×
Odpovědět | Admin
Hledám nějakou distribuci s binárními balíčky, které jsou zkompilované s několika volbami pro různé závislosti, abych neměl příliš zbytečností, které nevyužiji. Aby byly oddělené vývojářské balíčky a knihovny (na kterých závisí další programy) od nástrojů (např. když něco vyžaduje libattr a nepotřebuje to dodávaný nástroj attr, tak attr nechci). Balíčkovací systém by neměl být napsán v nějakém skriptovacím jazyce (maximálně v sh, ale né v bashi, musí to běžet třeba v shellu v busyboxu (ash)). Minimum závislostí, jenom to co je nutné k běhu nějakého lehkého WM v Xkách.

Např. se mi libí v gentoo možnost přizpůsobit si balíčky, ale vadí mě kompilace a nutnost mít kvůli tomu spousty dalších balíčků potřebných jako závislosti pro kompilaci (bison, flex, perl, python a x různých věcí co nepotřebujete k běhu daného programu), taky je emerge napsaný v pythonu a má to tedy další závislosti.

Alpine linux se mi líbí, má rozdělené balíčky (i když bych ocenil kdyby byly rozdělené ještě víc), ale zase chybí možnost výběru mezi několika verzemi s různými závislostmi.
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

23.12.2015 14:11 Vašek
Rozbalit Rozbalit vše Re: Hledám přizpůsobitelné distro bez zbytečností
Odpovědět | | Sbalit | Link | Blokovat | Admin

Vytváříme vlastní distribuci Linuxu

23.12.2015 15:29 Jiří
Rozbalit Rozbalit vše Re: Hledám přizpůsobitelné distro bez zbytečností
Já už se o to pokoušel, cross kompilací (pro instalaci vlastních balíčků do chrootu zatím používám deb):
$ dpkg --root=/mnt/clfs --list
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name           Version      Architecture Description
+++-==============-============-============-=================================
ii  binutils       2.25.1-1     amd64        Binutils
ii  binutils-dev   2.25.1-1     amd64        Binutils (development files)
ii  bsdcpio        3.1.2-1      amd64        cpio-like tool from libarchive su
ii  bsdtar         3.1.2-1      amd64        tar-like tool from libarchive sup
ii  busybox        1.24.1-1     amd64        Busybox
ii  bzip2          1.0.6-3      amd64        A high-quality data compression a
ii  clang          3.6.2-1      amd64        LLVM C/C++ compiler
ii  cmake          3.4.1-1      amd64        A cross-platform open-source make
ii  filesystem     1.0-5        all          Base filesystem layout
ii  libacl         2.2.52-2     amd64        Access control list library
ii  libacl-dev     2.2.52-2     amd64        Access control list library (deve
ii  libarchive     3.1.2-1      amd64        library that can create and read 
ii  libarchive-dev 3.1.2-1      amd64        library that can create and read 
ii  libattr        2.4.47-2     amd64        Extended attribute support librar
ii  libattr-dev    2.4.47-2     amd64        Extended attribute support librar
ii  libbz2         1.0.6-3      amd64        A high-quality data compression l
ii  libbz2-dev     1.0.6-3      amd64        A high-quality data compression l
ii  libc++         3.6.2-1      amd64        C++ standard library
ii  libc++-dev     3.6.2-1      amd64        C++ standard library
ii  libc++abi      3.6.2-1      amd64        C++ ABI library
ii  libc++abi-dev  3.6.2-1      amd64        C++ ABI library (development file
ii  libc-musl      1.1.12-4     amd64        Musl C library
ii  libc-musl-dev  1.1.12-4     amd64        Musl C library, development files
ii  libcurl        7.46.0-1     amd64        An URL retrieval library
ii  libcurl-dev    7.46.0-1     amd64        An URL retrieval library (develop
ii  libexpat       2.1.0-3      amd64        An XML parser library
ii  libexpat-dev   2.1.0-3      amd64        An XML parser library (developmen
ii  libffi         3.2.1-2      amd64        Portable foreign function interfa
ii  libffi-dev     3.2.1-2      amd64        Portable foreign function interfa
ii  liblzma        5.2.2-2      amd64        Library for XZ and LZMA compresse
ii  liblzma-dev    5.2.2-2      amd64        Library for XZ and LZMA compresse
ii  liblzo         2.09-2       amd64        Portable lossless data compressio
ii  liblzo-dev     2.09-2       amd64        Portable lossless data compressio
ii  libressl       2.2.5-3      amd64        version of the TLS/crypto stack f
ii  libressl-dev   2.2.5-3      amd64        version of the TLS/crypto stack f
ii  libressl-libs  2.2.5-3      amd64        version of the TLS/crypto stack f
ii  linux-headers  4.3.3        amd64        Linux headers
ii  llvm           3.6.2-1      amd64        LLVM
ii  llvm-libs      3.6.2-1      amd64        LLVM libraries
ii  make           4.1-3        amd64        GNU make
ii  musl-utils     1.1.12-4     amd64        Musl's ldd symlink
ii  pkgconf        0.9.12-1     amd64        pkg-config compatible utility
ii  python2        2.7.11-1     amd64        A high-level scripting language
ii  zlib           1.2.8-5      amd64        Zlib compression library
ii  zlib-dev       1.2.8-5      amd64        Zlib compression library (develop
Akorát se mi kvůli rozhodnutí použít čistý clang bez gcc nedaří zkompilovat kernel, což je velký problém.

Ale právě kvůli tomu, že balíčky musím kompilovat mi to nabalí spoustu závislostí. Ke kompilaci clangu mi to nutí python (ještě k tomu verzi 2), ten zas další závislosti, cmake a závislosti (z nějakého důvodu má stahovací funkce které nejdou vypnout a potřebuje curl).

Hledám proto distro, které nabízí několiv alternativ k danému balíčku současně, s různými vlastnosmi, aniž bych si to musel sám kompilovat. Nemusí to být nutně všechny existující permutace.
23.12.2015 15:24 RickettsialPox | skóre: 20 | Praha, Žižkov
Rozbalit Rozbalit vše Re: Hledám přizpůsobitelné distro bez zbytečností
Odpovědět | | Sbalit | Link | Blokovat | Admin
Arch Linux, Ubuntu Minimal, Tiny Core Linux, LFedora, ...
Největší prvek každého hrdinského činu je strach. Život definuji jako "/dev/life >> /dev/null".
23.12.2015 15:32 Jiří
Rozbalit Rozbalit vše Re: Hledám přizpůsobitelné distro bez zbytečností
Už třeba v arch linuxu mi vadí, že správce balíčku vyžaduje bash (a nestačímu jakýkoliv sh (třeba ten z busyboxu), protože používají bashí pole. Balíčky jsou zřídka rozdělovány a většinou kompilovány s maximálním počtem vlastností a vyžadují tak spoustu závislostí.
23.12.2015 19:20 RickettsialPox | skóre: 20 | Praha, Žižkov
Rozbalit Rozbalit vše Re: Hledám přizpůsobitelné distro bez zbytečností
Bash je základem pro 40% balíčků...
Největší prvek každého hrdinského činu je strach. Život definuji jako "/dev/life >> /dev/null".
23.12.2015 19:48 Jiří
Rozbalit Rozbalit vše Re: Hledám přizpůsobitelné distro bez zbytečností
Nesouhlasím. Spousta programů, dokonce i ošklivé autotools configure skripty dokáží běžet v ashi. Bash, třeba v arch linuxu, je používán v pacmanovi kvůli používání polí v pkgbuildu, kde by ani pole nebylo potřeba. Třeba výčet závislostí je tam jako pole, ale název balíčku nesmí obsahovat mezeru, takže pole je netřeba a mohlo to být jako obyčejný řetězec, seznam oddělený mezerama. Se seznamem zdrojů je to horší, tam by mohla být mezera či znak nové řádky, ale to by šlo vyřešit funkcí a předat jí zdroje jako parametry, kde znak nové řádky jde použít jako součást parametru.
23.12.2015 19:20 RickettsialPox | skóre: 20 | Praha, Žižkov
Rozbalit Rozbalit vše Re: Hledám přizpůsobitelné distro bez zbytečností
Bash je základem pro 40 % balíčků...
Největší prvek každého hrdinského činu je strach. Život definuji jako "/dev/life >> /dev/null".
23.12.2015 21:25 Vantomas | skóre: 32 | Praha
Rozbalit Rozbalit vše Re: Hledám přizpůsobitelné distro bez zbytečností
Odpovědět | | Sbalit | Link | Blokovat | Admin
Co Gentoo? Je možné mít někde celou instalaci vč. všech závislostí nutné pro kompilování a pak je možné do chrootu nainstalovat jen potřebné věci a toto provozovat na nějakém stroji kde je požadavek jen na nutné věci.

Gentoo by mohlo mít i nějak zpracovanou podporu only-Clang systému, případně by mohli kolem toho udržovat i nějaké patche, v tomto pohledu bylo Gentoo dříve převratně funkční.

Zde je článek na Gentoo Wiki s názvem Tinygentoo které o tomto pojednává: http://www.gentoo-wiki.info/TinyGentoo

Pro upřesnění i dalších diskutujících by bylo vhodné říct co má být výsledkem, kde to chceš provozovat, proč nechceš nějaké závislosti navíc a tak.
23.12.2015 21:27 Vantomas | skóre: 32 | Praha
Rozbalit Rozbalit vše Re: Hledám přizpůsobitelné distro bez zbytečností
Ach pardon, přehlídl jsem požadavek na binární distro. Tam se obávám, že nic až takhle specifikého najít nepůjde a bude třeba si to udělat sám.
Jendа avatar 23.12.2015 21:30 Jendа | skóre: 78 | blog: Jenda | JO70FB
Rozbalit Rozbalit vše Re: Hledám přizpůsobitelné distro bez zbytečností
Odpovědět | | Sbalit | Link | Blokovat | Admin
Rozjel bych si někde Gentoo se všemi build závislostmi, aby v balíčcích nebyly funkce, co nechceš, a pak používal výsledné binárky.

Btw. jaká je k tomu motivace? To ti jde o těch 500 MB místa na disku?

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.