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