* [gentoo-dev] Summary: Install CD Bloat thread @ 2003-08-22 0:08 Alec Berryman 2003-08-22 4:52 ` Owen Gunden ` (2 more replies) 0 siblings, 3 replies; 12+ messages in thread From: Alec Berryman @ 2003-08-22 0:08 UTC (permalink / raw To: gentoo-dev [-- Attachment #1: Type: text/plain, Size: 2137 bytes --] Install CD Bloat Thread Summary: Kurt Lieber started off the thread: "I've used the same installation CD for most of my gentoo installs over the past few months, so I was shocked today when I realized that the smallest install ISO that we currently offer (at least for x86) is 80MB. When I started with Gentoo, it was ~15MB. What brought about the nearly six-fold increase in size for our basic installation CD?" The first culprit pointed out was vim. Many said that they would not need vim, or even vi, to edit their /etc/make.conf. Others said that because vi was a UNIX/Linux/POSIX.2 standard, it needed to be on the CD. Although no compromise was reached, it was generally agreed that vim should be replaced by a smaller vi clone, perhaps nvi (the standard BSD vi) or vi itself. Aron Griffis pleaded that no substandard vi clones be considered. Several people asked that no tools duplicate functionality, such as nano and vim. The thread degeneraged quickly. Another culprit for the increase was the inclusion of Perl 5. No one could figure out a good reason for it to be on there. Sven Vermeulen asked if links would be kept or replaced with lynx. While lynx is smaller, it does not display tables or frames. Links is more difficult to configure with a proxy. Stewart Honsberger suggested that lynx go on the minimal cd (see below), while lynx go on the larger CDs. Stuart Herbert suggested the use of cloop, which should be in portage in less than a week. Chris proposed three CD sets: an minimal install CD with a stage1 tarball, a large LiveCD with common UNIX tools and a GUI, as well as a full GRP CD. Luke-Jr replied that the new InGen LiveCDs would fit as the "large LiveCD", but thought that there would not be enough space to also use that as a base for the full GRP CD. Stuart Herbert and others asked for the minimal install CD to be less than 55MB in order to fit on keychain USB devices. Others wanted the minimal install CD to size down to the original 16MB. Another idea was for each user to generate his own custom LiveCD through a set of scripts. [-- Attachment #2: This is a digitally signed message part --] [-- Type: application/pgp-signature, Size: 189 bytes --] ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [gentoo-dev] Summary: Install CD Bloat thread 2003-08-22 0:08 [gentoo-dev] Summary: Install CD Bloat thread Alec Berryman @ 2003-08-22 4:52 ` Owen Gunden 2003-08-22 10:28 ` Karsten Schulz 2003-08-24 21:09 ` Stuart Herbert 2 siblings, 0 replies; 12+ messages in thread From: Owen Gunden @ 2003-08-22 4:52 UTC (permalink / raw To: gentoo-dev On Thu, Aug 21, 2003 at 07:08:55PM -0500, Alec Berryman wrote: > Stewart Honsberger suggested that lynx go on the minimal cd (see below), > while lynx go on the larger CDs. ^^^^ I think you mean links here. Excellent summary! Thanks so much for taking the time. Owen -- Howard Dean will enable hicks like me to get broadband. http://www.deanforamerica.com/ -- gentoo-dev@gentoo.org mailing list ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [gentoo-dev] Summary: Install CD Bloat thread 2003-08-22 0:08 [gentoo-dev] Summary: Install CD Bloat thread Alec Berryman 2003-08-22 4:52 ` Owen Gunden @ 2003-08-22 10:28 ` Karsten Schulz 2003-08-24 21:09 ` Stuart Herbert 2 siblings, 0 replies; 12+ messages in thread From: Karsten Schulz @ 2003-08-22 10:28 UTC (permalink / raw To: gentoo-dev Alec, thank you very much for your excellent summaries! I would like to encourage you to go on with your work. thanks again, Karsten -- gentoo-dev@gentoo.org mailing list ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [gentoo-dev] Summary: Install CD Bloat thread 2003-08-22 0:08 [gentoo-dev] Summary: Install CD Bloat thread Alec Berryman 2003-08-22 4:52 ` Owen Gunden 2003-08-22 10:28 ` Karsten Schulz @ 2003-08-24 21:09 ` Stuart Herbert 2003-08-24 23:37 ` Georgi Georgiev ` (2 more replies) 2 siblings, 3 replies; 12+ messages in thread From: Stuart Herbert @ 2003-08-24 21:09 UTC (permalink / raw To: Alec Berryman, gentoo-dev [-- Attachment #1.1: body text --] [-- Type: text/plain, Size: 1241 bytes --] Hi Alec, First off - great summary! On Friday 22 August 2003 1:08 am, Alec Berryman wrote: > Install CD Bloat Thread Summary: [ snip ] > Another culprit for the increase was the inclusion of Perl 5. No one > could figure out a good reason for it to be on there. pptpclient requires it. There are a number of packages that pull in Perl 5 during the process of creating the CD image, but pptpclient is the only package that survives through to the actual CD image that genuinely needs Perl 5. See the attachment for all the gory details. The only way to leave Perl 5 off the CD is to drop pptpclient. I couldn't find any alternative on Freshmeat, and I suspect that many people who install Gentoo Linux have ISPs who use PPTP. Best regards, Stu -- Stuart Herbert stuart@gentoo.org Gentoo Developer http://www.gentoo.org/ Beta packages for download http://dev.gentoo.org/~stuart/packages/ Come and meet me in March 2004 http://www.phparch.com/cruise/ GnuGP key id# F9AFC57C available from http://pgp.mit.edu Key fingerprint = 31FB 50D4 1F88 E227 F319 C549 0C2F 80BA F9AF C57C -- [-- Attachment #1.2: livecd-perl5.txt --] [-- Type: text/plain, Size: 4521 bytes --] Analysis of perl-5.8 on the basic install CD -------------------------------------------- In Alec's recent summary of the discussion on bloat on the basic x86 install CD for Gentoo 1.4, the point was made that no-one is really clear as to *why* perl-5.8 is part of the image. So I decided to find out I decided the best way to do this would be to work from first principles, and find out what it would take to build a basic install CD image from scratch without perl. Summary ------- Do we need perl-5.8 on the final CD install image? Yes, for pptpclient. The Gory Details ---------------- 1. default-1.4-x86 profile 'emerge system' is the command run at stage 2 of the Gentoo installation process. This automatically pulls in perl-5.8, because it is listed in the 'profile' for Gentoo 1.4 on x86. Solution: create a new profile, listing the packages required for the basic install CD. Make sure perl-5.8 isn't included in the list of packages in the new profile. This solution has the advantage of 'documenting' (well, sort of!) the list of packages that make up the basic CD image. 2. Vim Even with USE="minimal", building vim pulls in perl. There's no real need to use vim on the install image; app-editors/vi is sufficient for the purposes of installing Gentoo. Solution: remove 'vim' from the install CD, and add 'apps-editors/vi' instead. 3. openssl openssl uses perl as part of its compilation stage, but doesn't (as far as I can tell) need perl once installed. Solution: allow openssl to install perl as a dependency, and then remember to remove perl ('emerge -C perl') later. 4. sys-apps/help2man help2man is a dependency of diffutils. help2man requires perl as a runtime dependency. We don't need help2man on the basic install CD; is there a way to get rid of it? Solution: by adding the 'build' USE flag, we convince diffutils not to build its documentation, and not to DEPEND on help2man at all. 5. sys-devel/autoconf autoconf is a perl script. Solution: remember to remove autoconf and perl when we're done building the software for the CD image. 6. sys-devel/automake Like autoconf, automake is a perl script. Solution: remember to remove perl when we're done. 7. sys-apps/util-linux util-linux lists perl as a runtime dependency. However, unless I've missed something, our util-linux ebuild does not install anything that requires perl at all. It would appear that the ebuild needs fixing. Solution: remember to remove perl when we're done. 8. net-misc/openssh Like the autoconf and automake ebuilds, the ebuild for openssh uses perl to perform search and replace; something that can also be done using sed. Unlike the autoconf and automake ebuilds, openssh doesn't need perl at runtime. This ebuild needs fixing. Solution: remember to remove perl when we're done. 9. net-irc/irssi irssi is an excellent text-mode IRC client; it's my personal favourite. It uses perl for scripted extensions - a feature we're not going to miss on a minimal boot CD image. The weird thing is, the ebuild very clearly only depends on perl if the 'perl' USE flag is set. So, why is perl being pulled in? Well, the irssi ebuild inherits the perl-module eclass, and *that's* where the dependency comes from. Solution: fix the ebuild to only inherit perl-module if the perl USE flag is set; until then, ensure -perl is set in the USE flags, and remember to remove perl when we're done. 10. net-dialup/pptpclient pptpclient is used to connect to ISPs that use the PPTP protocol. PPTP is a tunnelling protocol apparently credited to Microsoft, and is documented in RFC 2647. This package includes perl scripts, and probably (definitely?) cannot work without perl. Solutions: 1) Drop support for users who need PPTP support. Not very sociable. 2) Find a PPTP package that doesn't use Perl. Gentoo doesn't seem to have an ebuild for an alternative, and a quick search on Freshmeat doesn't look too promising. 3) Produce two install CD images - one with PPTP support, and one without. 4) Find another way to reduce the disk size (like -nls in the USE flags?) 11. sys-apps/xinetd xinetd is a dependency of the net-ftp/ftpd server that's included in the list of packages for the basic CD install image. xinetd includes a perl script called xconv.pl, which appears to translate traditional UNIX inetd.conf files into xinetd's own format. Solution: we don't need xconv.pl working on the basic install CD image, so perl can be safely removed (along with the xconv.pl script) [-- Attachment #2: signature --] [-- Type: application/pgp-signature, Size: 189 bytes --] ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [gentoo-dev] Summary: Install CD Bloat thread 2003-08-24 21:09 ` Stuart Herbert @ 2003-08-24 23:37 ` Georgi Georgiev 2003-08-25 8:59 ` Paul de Vrieze 2003-08-25 0:53 ` [gentoo-dev] conditional dependencies (was: [gentoo-dev] Summary: Install CD Bloat thread) Mamoru KOMACHI 2003-08-25 8:57 ` [gentoo-dev] Summary: Install CD Bloat thread Paul de Vrieze 2 siblings, 1 reply; 12+ messages in thread From: Georgi Georgiev @ 2003-08-24 23:37 UTC (permalink / raw To: gentoo-dev [-- Attachment #1: Type: text/plain, Size: 1155 bytes --] On 24/08/2003 at 22:09:12(+0100), Stuart Herbert used 6.6K just to say: > > Another culprit for the increase was the inclusion of Perl 5. No one > > could figure out a good reason for it to be on there. > > pptpclient requires it. > > There are a number of packages that pull in Perl 5 during the process of > creating the CD image, but pptpclient is the only package that survives > through to the actual CD image that genuinely needs Perl 5. See the > attachment for all the gory details. > > The only way to leave Perl 5 off the CD is to drop pptpclient. I couldn't > find any alternative on Freshmeat, and I suspect that many people who install > Gentoo Linux have ISPs who use PPTP. Well, there is always perlcc. One could make a huge, perlcc-compiled and statically linked pptpclient for the LiveCD I guess. Or it doesn't have to be static, keeping the necessary libs could be enough. -- () Georgi Georgiev () The absent ones are always at fault. () () chutz@gg3.net () () () +81(90)6266-1163 () () [-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --] ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [gentoo-dev] Summary: Install CD Bloat thread 2003-08-24 23:37 ` Georgi Georgiev @ 2003-08-25 8:59 ` Paul de Vrieze 2003-08-25 9:12 ` Georgi Georgiev 0 siblings, 1 reply; 12+ messages in thread From: Paul de Vrieze @ 2003-08-25 8:59 UTC (permalink / raw To: gentoo-dev > > Well, there is always perlcc. One could make a huge, perlcc-compiled and > statically linked pptpclient for the LiveCD I guess. Or it doesn't have to > be > static, keeping the necessary libs could be enough. > Just for fun you might want to create a dynamic and static version and tell us how big these are (and compare them with the size of the minimal perl install) Paul -- Paul de Vrieze Researcher Mail: pauldv@cs.kun.nl Homepage: http://www.devrieze.net -- gentoo-dev@gentoo.org mailing list ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [gentoo-dev] Summary: Install CD Bloat thread 2003-08-25 8:59 ` Paul de Vrieze @ 2003-08-25 9:12 ` Georgi Georgiev 0 siblings, 0 replies; 12+ messages in thread From: Georgi Georgiev @ 2003-08-25 9:12 UTC (permalink / raw To: gentoo-dev On 25/08/2003 at 10:59:11(+0200), Paul de Vrieze used 0.5K just to say: > > > > Well, there is always perlcc. One could make a huge, perlcc-compiled and > > statically linked pptpclient for the LiveCD I guess. Or it doesn't have to > > be > > static, keeping the necessary libs could be enough. > > > > Just for fun you might want to create a dynamic and static version and > tell us how big these are (and compare them with the size of the minimal > perl install) pptpclient-1.2.0 is in C. Maybe include that one instead? perlcc was not a good idea after all. The dynamic pptp_fe (version 1.1.0) is 880K, and libperl.so that it needs is 1M. -- \ Georgi Georgiev \ Brain fried -- Core dumped \ / chutz@gg3.net / / \ +81(90)6266-1163 \ \ -- gentoo-dev@gentoo.org mailing list ^ permalink raw reply [flat|nested] 12+ messages in thread
* [gentoo-dev] conditional dependencies (was: [gentoo-dev] Summary: Install CD Bloat thread) 2003-08-24 21:09 ` Stuart Herbert 2003-08-24 23:37 ` Georgi Georgiev @ 2003-08-25 0:53 ` Mamoru KOMACHI 2003-08-25 1:16 ` Stuart Herbert 2003-08-25 8:57 ` [gentoo-dev] Summary: Install CD Bloat thread Paul de Vrieze 2 siblings, 1 reply; 12+ messages in thread From: Mamoru KOMACHI @ 2003-08-25 0:53 UTC (permalink / raw To: gentoo-dev Hi, At Sun, 24 Aug 2003 22:09:12 +0100, Stuart Herbert wrote: > The weird thing is, the ebuild very clearly only depends on perl if the > 'perl' USE flag is set. So, why is perl being pulled in? Well, the > irssi ebuild inherits the perl-module eclass, and *that's* where the > dependency comes from. > > Solution: fix the ebuild to only inherit perl-module if the perl USE flag > is set; until then, ensure -perl is set in the USE flags, and remember to > remove perl when we're done. I have a similar problem in http://bugs.gentoo.org/show_bug.cgi?id=27175 In that bug, carpaski said: "inherit is NEVER allowed to be conditional that way. Either you inherit, or you don't. There is no middle ground. It can be worked around, but any auxdb variables MAY NOT be involved in bash conditional statements." I don't want to inherit if it isn't required, but Portage doesn't allow it ;-( And the problem is there seems no way to remove certain DEPENDs once you inherit it (in net-irc/irsii case, you cannot remove dependency to perl if you inherit perl-module). From a comment about conditional dependencies in net-im/licq-1.2.7.ebuild I thoght it is a work around to remove undesired DEPEND if USE flag is not set, but when I tried to emerge that ebuild I realised that it doesn't work :-( Does anyone know how to deal with the problem? regards, -- Mamoru KOMACHI <usata@gentoo.org> http://dev.gentoo.org/~usata/ -- gentoo-dev@gentoo.org mailing list ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [gentoo-dev] conditional dependencies (was: [gentoo-dev] Summary: Install CD Bloat thread) 2003-08-25 0:53 ` [gentoo-dev] conditional dependencies (was: [gentoo-dev] Summary: Install CD Bloat thread) Mamoru KOMACHI @ 2003-08-25 1:16 ` Stuart Herbert 2003-08-25 16:47 ` Mamoru KOMACHI 0 siblings, 1 reply; 12+ messages in thread From: Stuart Herbert @ 2003-08-25 1:16 UTC (permalink / raw To: gentoo-dev [-- Attachment #1: signed data --] [-- Type: text/plain, Size: 945 bytes --] On Monday 25 August 2003 1:53 am, Mamoru KOMACHI wrote: > In that bug, carpaski said: > > "inherit is NEVER allowed to be conditional that way. > Either you inherit, or you don't. There is no middle ground. Ain't that a pain. Must be because eclasses can and do add their own dependencies; having optional inherits would really make a mess of the metacache I guess. I'm glad you brought this up; it's not a restriction that I'd come across before. Best regards, Stu -- Stuart Herbert stuart@gentoo.org Gentoo Developer http://www.gentoo.org/ Beta packages for download http://dev.gentoo.org/~stuart/packages/ Come and meet me in March 2004 http://www.phparch.com/cruise/ GnuGP key id# F9AFC57C available from http://pgp.mit.edu Key fingerprint = 31FB 50D4 1F88 E227 F319 C549 0C2F 80BA F9AF C57C -- [-- Attachment #2: signature --] [-- Type: application/pgp-signature, Size: 189 bytes --] ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [gentoo-dev] conditional dependencies (was: [gentoo-dev] Summary: Install CD Bloat thread) 2003-08-25 1:16 ` Stuart Herbert @ 2003-08-25 16:47 ` Mamoru KOMACHI 0 siblings, 0 replies; 12+ messages in thread From: Mamoru KOMACHI @ 2003-08-25 16:47 UTC (permalink / raw To: gentoo-dev At Mon, 25 Aug 2003 02:16:13 +0100, Stuart Herbert wrote: > Must be because eclasses can and do add their own dependencies; > having optional inherits would really make a mess of the metacache I > guess. I found a workaround to deal with that problem (but not sure this is the right way to do it). Eclasses silently add E_*DEPEND and emerge seems to catch dependencies not only from *DEPEND but also from E_*DEPEND, so you may want to write inherit elisp E_DEPEND="emacs? ( ${E_DEPEND} )" E_RDEPEND="emacs? ( ${E_RDEPEND} )" DEPEND="[...]" to turn off emacs dependency when USE="-emacs". This way, metacache will not be messed up. regards, -- Mamoru KOMACHI <usata@gentoo.org> http://dev.gentoo.org/~usata/ -- gentoo-dev@gentoo.org mailing list ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [gentoo-dev] Summary: Install CD Bloat thread 2003-08-24 21:09 ` Stuart Herbert 2003-08-24 23:37 ` Georgi Georgiev 2003-08-25 0:53 ` [gentoo-dev] conditional dependencies (was: [gentoo-dev] Summary: Install CD Bloat thread) Mamoru KOMACHI @ 2003-08-25 8:57 ` Paul de Vrieze 2003-08-25 12:00 ` Stuart Herbert 2 siblings, 1 reply; 12+ messages in thread From: Paul de Vrieze @ 2003-08-25 8:57 UTC (permalink / raw To: gentoo-dev > There are a number of packages that pull in Perl 5 during the process of > creating the CD image, but pptpclient is the only package that survives > through to the actual CD image that genuinely needs Perl 5. See the > attachment for all the gory details. One thing, your list lists xinetd as a dependency of ftp, but is there actually any reason to offer the server part of the ftp package at all. I mean why would the livecd include an ftp server. I see the point of the ftp client that is in that package, but imho removing the whole of xinetd is no problem. Paul -- Paul de Vrieze Researcher Mail: pauldv@cs.kun.nl Homepage: http://www.devrieze.net -- gentoo-dev@gentoo.org mailing list ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [gentoo-dev] Summary: Install CD Bloat thread 2003-08-25 8:57 ` [gentoo-dev] Summary: Install CD Bloat thread Paul de Vrieze @ 2003-08-25 12:00 ` Stuart Herbert 0 siblings, 0 replies; 12+ messages in thread From: Stuart Herbert @ 2003-08-25 12:00 UTC (permalink / raw To: gentoo-dev; +Cc: livewire Hi Paul, On Monday 25 August 2003 9:57 am, Paul de Vrieze wrote: > One thing, your list lists xinetd as a dependency of ftp, but is there > actually any reason to offer the server part of the ftp package at all. I > mean why would the livecd include an ftp server. I see the point of the > ftp client that is in that package, but imho removing the whole of xinetd > is no problem. Well, ftpd is in livewire's list of packages for the install CD. It's probably best for him to explain why it's on the list. Best regards, Stu -- Stuart Herbert stuart@gentoo.org Gentoo Developer http://www.gentoo.org/ Beta packages for download http://dev.gentoo.org/~stuart/packages/ Come and meet me in March 2004 http://www.phparch.com/cruise/ GnuGP key id# F9AFC57C available from http://pgp.mit.edu Key fingerprint = 31FB 50D4 1F88 E227 F319 C549 0C2F 80BA F9AF C57C -- -- gentoo-dev@gentoo.org mailing list ^ permalink raw reply [flat|nested] 12+ messages in thread
end of thread, other threads:[~2003-08-25 17:07 UTC | newest] Thread overview: 12+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2003-08-22 0:08 [gentoo-dev] Summary: Install CD Bloat thread Alec Berryman 2003-08-22 4:52 ` Owen Gunden 2003-08-22 10:28 ` Karsten Schulz 2003-08-24 21:09 ` Stuart Herbert 2003-08-24 23:37 ` Georgi Georgiev 2003-08-25 8:59 ` Paul de Vrieze 2003-08-25 9:12 ` Georgi Georgiev 2003-08-25 0:53 ` [gentoo-dev] conditional dependencies (was: [gentoo-dev] Summary: Install CD Bloat thread) Mamoru KOMACHI 2003-08-25 1:16 ` Stuart Herbert 2003-08-25 16:47 ` Mamoru KOMACHI 2003-08-25 8:57 ` [gentoo-dev] Summary: Install CD Bloat thread Paul de Vrieze 2003-08-25 12:00 ` Stuart Herbert
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox