There is still some - eg the old audio programs which could be unbundled for 
those who still need them (though I’m not talking about audioctl or audiotest 
as those are still key bits of boomer.

The cardbus and remaining bits from pcmcia could be yanked - I don’t think 
anyone uses them anymore. (USB won that battle well over a decade ago.)

There’s still a bunch of stuff related to sparc only technology.  Luxadm.  DR.  
Some of the old power management framework (there are both old and new PM apis. 
 The old ones are still around because some ancient sparc hardware like the zs 
serial driver still depends on them.

In user space getting rid of the Perl dependency would help.  This requires 
effort beyond just removal though because someone would need to write C 
equivalents.

There might still be some Java dependencies. Getting rid of those would be good.

I’d love to see the small amount of C++ removed.  After the legacy audio stuff 
the only remaining bits are probably the libSMHBA stuff. I’m not sure there are 
really any consumers for that - possibly bits of FMA use it but that could 
likely be replaced with a very much smaller bit of C.

Btw I know some folks are bullish on new languages like rust or go.  (I am a 
big fan of go.)  I think that I’d rather not see illumos adopt those in our 
core code base though.  I think they add to the cognitive load, the maintainer 
load, and may impair portability.

As to shell stuff.  I think I’d prefer a lighter weight default shell than 
ksh93.  I expect distros to include ksh93 and bash as needed but it should be 
able to choose a smaller common core shell. Dash or something like it that is 
minimally posix compliant.

The job for the core isn’t to be the most usable end user system.  The job is 
to be the best core for distributions to build on and not do their job for 
them. (And at the same time not make decisions for them not preclude them from 
making reasonable decisions for themselves. This includes the form of package 
delivery.)

Get Outlook<https://aka.ms/qtex0l> for iOS
________________________________
From: Peter Tribble <peter.trib...@gmail.com>
Sent: Monday, July 26, 2021 5:44:47 AM
To: illumos-discuss <discuss@lists.illumos.org>
Subject: Re: [discuss] how to make illumos shed fat?



On Mon, Jul 26, 2021 at 12:36 PM mayur...@kathe.in<mailto:mayur...@kathe.in> 
<mayur...@kathe.in<mailto:mayur...@kathe.in>> wrote:
cross-posting since i accidentally addressed this one to omnios-discuss the 
first time. sorry.

i have noticed a trend amongst communities oriented towards building open 
source unix-like operating systems; the project starts off as being quite lean, 
but then acquires a lot of fat due to dependence on the non-core toolkit.

The size of what you deliver depends on the uses to which it's put. The OS 
itself
is pretty lean (you can boot from a ~10MB ISO into a 48MB RAM VM if you put your
mind to it).

You can strip any image down, but if you want to get below about 200M (for an 
ISO or an
installation) then you're going to remove functionality or hardware support. At 
which point
the artefact you ship is going to be unusable by some fraction of your 
userbase. It's easier
just to stop at that point and ship something that's useful for the majority.

from the illumos perspective, i would say, "core" would be the kernel + 
userland, all written using a combination of ansi-c and the system default 
shell (korn).

afaik, 'ips' is built using python which supposedly coordinates between minisat 
(written in ansi-c), the userland and some mechanism to get files off the 
network.
i am not yet clear about how 'ips' works, and i am working at overcoming that 
by consulting "till wegmueller" who has written a couple of implementations of 
'ips' using different programming languages (it think; go and rust), but, it 
would be worthwhile to get a broader input from those in the community who were 
from "sun microsystems" as to why python was chosen over ksh93.

IPS isn't part of illumos, and while some distributions use it, there are 
others that don't.

also, after an email thread on omnios-disucss, it has been revealed that there 
are a bunch of tools on the base system which depend of 'gnu' bash, is there 
any way that could be rectified? or is that issue only within omnios and not 
addressable by the illumos community at large?

bash is quite ubiquitous in the open source world; large parts of the ecosystem
(often unintentionally) require bash. Could be fixed, but it's an ongoing 
maintenance
burden so it's easier not to bother. The vast majority of potential users 
probably
want bash, so you want it anyway and it's not adding excess weight.

is there any way the illumos community could get interested in shedding it's 
fat even at the userland level?

There isn't actually a great deal of fat. Tribblix strips a little bit, but I'm
well into diminishing returns at this point.

--
-Peter Tribble
http://www.petertribble.co.uk/ - http://ptribble.blogspot.com/
illumos<https://illumos.topicbox.com/latest> / illumos-discuss / see 
discussions<https://illumos.topicbox.com/groups/discuss> + 
participants<https://illumos.topicbox.com/groups/discuss/members> + delivery 
options<https://illumos.topicbox.com/groups/discuss/subscription> 
Permalink<https://illumos.topicbox.com/groups/discuss/T8b661f3611aef44c-M7da4f90784763313687803b1>

------------------------------------------
illumos: illumos-discuss
Permalink: 
https://illumos.topicbox.com/groups/discuss/T8b661f3611aef44c-M0e9754d69f89588924d561ae
Delivery options: https://illumos.topicbox.com/groups/discuss/subscription

Reply via email to