LinuxQuestions.org
Visit Jeremy's Blog.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Gentoo
User Name
Password
Gentoo This forum is for the discussion of Gentoo Linux.

Notices


Reply
  Search this Thread
Old 04-08-2017, 09:24 AM   #1
chrocket
LQ Newbie
 
Registered: Jan 2011
Posts: 16

Rep: Reputation: 0
How do you avoid bloat and problematic components in Gentoo Linux?


Let's share our experiences.

systemd and PulseAudio often froze the shutdown process for a while. I replaced systemd with OpenRC. Somehow, GNOME crashed very often in the presence of some KDE programs. Thus, I ditched GNOME.

It turns out that RedHat has been forcing distributions to use their softwares long before the softwares became stable. Two (former) RedHat employees caught my attention. Lennart Poettering forced Fedora and other distros to use PulseAudio and systemd before they became stable. systemd developers forced distributions to use systemd by forcing udev to depend on systemd. udev was used by many distributions. Later, udev was eaten by systemd. Havoc Pennington founded freedesktop and forced major desktop environments and web browsers to use dbus via freedesktop. Havoc Pennington pushed a lot of things through freedesktop. Linus Torvalds had to stop dbus developers from shoving kdbus into linux kernel a few years ago. If dbus was replaced by kdbus, a lot of programs could break on *BSD.

I realized that ALSA + dmix would be just fine because I don't use bluetooth audio(which still doesn't work reliably on Linux. Thanks to bluez) or have a second sound card. I don't really use pulseaudio per-application volume, either. Thus, I plan to remove PulseAudio by moving to Gentoo Linux in the near future. I'll be able to reduce CPU usage and latency and remove an extra layer between ALSA and user applications. I have yet to decide how problematic PulseAudio is at this point, though. If I really wanted or needed a sound server in the future, I might try combining ALSA and JACK. Since Gentoo requires a lot of compilation, I will buy a new CPU.

I used NetworkManager without much thought when I used GNOME, but after replacing NetworkManger with OpenRC's network management capability, I gained more flexibility and more network configuration options. NetworkManager was difficult to handle directly via command line or text file configurations.

I'm not sure if I want to avoid dbus at all costs because gtk+3, many web browsers except qupzilla and surf, and many other graphics programs depend on dbus directly or indirectly. But, I can try to minimize dbus footprint as much as possible in Gentoo by USE flags. I could use qupzilla and surf if I wanted to avoid dbus in web browser, but qupzilla still pulls a lot of dependencies via qt5-base and ffmpeg. Plus, many other programs still require dbus. Thus, chrome or firefox with dbus seems to be a lesser poison than qt5-base or webkitgtk.

Last edited by chrocket; 04-08-2017 at 09:39 AM.
 
Old 04-08-2017, 01:52 PM   #2
hazel
LQ Guru
 
Registered: Mar 2016
Location: Harrow, UK
Distribution: LFS, AntiX, Slackware
Posts: 7,597
Blog Entries: 19

Rep: Reputation: 4455Reputation: 4455Reputation: 4455Reputation: 4455Reputation: 4455Reputation: 4455Reputation: 4455Reputation: 4455Reputation: 4455Reputation: 4455Reputation: 4455
I don't have dbus on LFS, so I'm sure you can avoid it on Gentoo as well. My browsers are firefox, built with --disable-dbus, and links.
 
Old 04-08-2017, 08:30 PM   #3
chrocket
LQ Newbie
 
Registered: Jan 2011
Posts: 16

Original Poster
Rep: Reputation: 0
Quote:
Originally Posted by hazel View Post
I don't have dbus on LFS, so I'm sure you can avoid it on Gentoo as well. My browsers are firefox, built with --disable-dbus, and links.
If I compiled every package manually, I could avoid dbus in any linux distribution in theory. But, that takes too much time.
If I wanted to compile packges manually, using LFS would waste the least amount of time.
A major reason that I want to use gentoo is to use global USE flags to turn off dbus and other unwanted components globally.
It turns out that it's not possible to do so in Gentoo with USE flags or package masks.
gtk+3 depends on dbus indirectly, and there is currently no way to make Gentoo build gtk+3 without dbus via USE flags or package masks.
I can't turn off (qt)dbus in many other applications via USE flags or package masks in Gentoo unless I maintain my own repository of ebuild files.

I also have little confidence that I can make Gentoo maintainers make dbus optional globally.
If they made dbus mandatory on purpose, I couldn't make a difference.
If they didn't, they might not want to spend many hours just to make dbus optional.

It seems USE flags are not granular enough.

By the way, even if you use LFS, you can't avoid dbus if you install gtk+3. Refer to https://bugs.archlinux.org/task/42808
It's best to avoid gtk+3 applications if you want to avoid dbus.

Perhaps, I should replace gtk+3 applications with qt ones.

Last edited by chrocket; 04-08-2017 at 09:37 PM.
 
Old 04-09-2017, 08:56 AM   #4
i92guboj
Gentoo support team
 
Registered: May 2008
Location: Lucena, Córdoba (Spain)
Distribution: Gentoo
Posts: 4,083

Rep: Reputation: 405Reputation: 405Reputation: 405Reputation: 405Reputation: 405
It used to be possible to go without udev, dbus and almost anything that's considered "necessary" in most distros.

It's been 3 or 4 years since I tried something similar in Gentoo, though. I guess it must still be possible, but it all depends on how complex your dependency tree is Most gtk+-3 stuff will surely end requiring a bunch of stuff. Modern session managers also require this kind of stuff.

If you can live with a basic window manager and non-DE dependent applications it should be doable.

As for USE granularity, well, that depends a bit on concrete packages. There are many which are quite configurable, it all depends on the ebuild writer. It's easy enough to modify ebuilds to add more configurability in that regard. If it makes sense to do so, you can even submit the improved ebuild to bugzilla and it might get accepted into the official portage tree.
 
Old 04-09-2017, 09:04 AM   #5
Emerson
LQ Sage
 
Registered: Nov 2004
Location: Saint Amant, Acadiana
Distribution: Gentoo ~amd64
Posts: 7,661

Rep: Reputation: Disabled
Install without udev.
 
Old 12-02-2017, 12:52 PM   #6
_roman_
Member
 
Registered: Dec 2017
Location: _Austro_Bavaria_
Distribution: gentoo / linux mint
Posts: 433

Rep: Reputation: 29
Quote: Reload this Page How do you avoid bloat and problematic components in Gentoo Linux?

openrc + eudev + lvm2 + luks + i3wm

bloatfree asks for a small desctop environment like i3wm or bare x server

--

the essential part is to review on every update, what will be installed or updated

do i need that pacakge now? check useflags, too many unwanted useflags pull in a rat tail.
at that point uninstalling won't hurt you, as it will be uninstalled and updated anyway.

Keeping the world file sane is also important

equery depends package

euses lvm

qlist -Iv package

ufed should not be used anymore, as it is not maintained anymore, and is superseeded by euses

--

grub package does not need to be installed as an ebuild. grub does not need to be updated anyway.
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
LXer: Does Linux suffer from bloat? LXer Syndicated Linux News 1 12-23-2014 04:57 PM
LXer: How do You Really Measure Linux Bloat? LXer Syndicated Linux News 0 08-27-2009 09:20 PM
Gentoo install...Problematic whoever Linux - Newbie 15 08-09-2005 11:44 AM
Westell modems problematic with Linux linuxhippy Slackware 2 05-01-2005 03:31 PM
Bloat in Linux? f0rk Linux - Distributions 5 12-10-2004 02:21 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Gentoo

All times are GMT -5. The time now is 09:03 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration