* Re: [gentoo-dev] Summary: Install CD Bloat thread
@ 2003-08-24 21:09 99% ` Stuart Herbert
0 siblings, 0 replies; 1+ results
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 [relevance 99%]
Results 1-1 of 1 | reverse | options above
-- pct% links below jump to the message on this page, permalinks otherwise --
2003-08-22 0:08 [gentoo-dev] Summary: Install CD Bloat thread Alec Berryman
2003-08-24 21:09 99% ` Stuart Herbert
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox