Author Topic: Bloated MDs  (Read 16160 times)

Armor Gnome

  • Guru
  • ****
  • Posts: 309
    • View Profile
Bloated MDs
« on: August 17, 2012, 02:32:40 am »
This is just an observation, but from it there may be room to strip down some installer components and improve the disk-less creation process.  This actually may be part of the design and a wanted feature so I will leave some options open in my suggestions for that case.

I entered KDE on a media director to see if I could adjust some nvidia settings using their x_config_prog.  What I found was a pretty large application list installed, considerably more than is installed on the core machine during DVD install.  Five or Six media players (additional to LMCE flavor, such as amarock and dragon), a lot of office applications and other features you would expect from a 10.04 install with KDE desktop.  It seemed a little excessive to me on a diskless MD that most users probably never access.  Perhaps by stripping down a lot of these packages, install times and load times could be improved?

Questions:

Is this "full" desktop a design feature?  Are these components present so that the MD can optionally function as a desktop?
Did I by going to KDE desktop on that MD load or unpack applications that otherwise would not have fully installed on that MD?

As I start loading more and more Media Directors to my setup I am (unreasonably) concerned about the growing core install location.  Although it may sound controlling and like I want to manage things LMCE can do by itself I would like to move to tiny fast drives in raid on a core machine with all media files stored on a NAS.  Because of that desire I have a few other questions about the way diskless devices are managed on the core.  This will help me understand what might be necessary to formally suggest any new install features.

Where I used to imagine diskless images like .iso files stored on a remote machine, I now better understand that installers are files and folders with commands that spawn more files, folders and commands.

 Are the /lib files shared among MDs or are they duplicated on the core for each MD?
 Is there a reason these /pluto/diskless folders couldn't be stored on a NAS?
 Is there room for development work on the Diskless_Create.sh?  I would be willing to take a look at slimming down some components where possible.
 Would anyone benefit from a prompt on the MD creation process pre-AV wizard that asks "Would you like add desktop functionality?", "will this be a designated media only location?" or even
 "Would you like this location to function as audio only?"

I think the MD creation process works wonderfully and am not reporting a buggy feature, I am just looking for ways to add a customizable experience while remaining as automagical as possible. 

I made a wiki!  Click here to check out my system.

JaseP

  • Addicted
  • *
  • Posts: 526
    • View Profile
    • JaseP's LinuxMCE Wiki User page
Re: Bloated MDs
« Reply #1 on: August 17, 2012, 03:35:04 am »
Yes,... A full desktop resides within the MD netboot setup. Has, at least since 0810. (I dabbled until my Intel chipsets became too much a bar).

At this time I recommend leaving it... Not that your point isn't well taken, but there are useful utilities and programs that can be made (forced?!) to run on a full KDE capable system... Think; games, communication apps, games, social networking crap, ... and Oh Yeah! games.

That said,... To dump nepomuk, stingi and akonadi server like they were plutonium? Amen.

There can also stand to be MD tweaking, if one was inclined to do so,... Like, changing swappiness, optimizing network latency, etc. ... But that's a whole additional wish list... and requires a crapload of empirical testing (I'm up for it,... but not at this exact moment in my life).


See my User page on the LinuxMCE Wiki for a description of my system configuration (click the little globe under my profile pic).

tschak909

  • LinuxMCE God
  • ****
  • Posts: 5549
  • DOES work for LinuxMCE.
    • View Profile
Re: Bloated MDs
« Reply #2 on: August 17, 2012, 05:10:27 am »
Feel free to trim things down. You will need to look at UbuntuDiskless, and the package database that we have in the web admin to see how this is happening.

Once again, I have said repeatedly in the past that the "desktop" feature is an absolute hell of inconsistency that can never be fixed correctly. There is no reason to have a desktop on the TV. None. Zero. No argument. There isn't one. No. Nuh uh.

-Thom

Steve

  • Veteran
  • ***
  • Posts: 67
  • 16 Years Linux exp.
    • View Profile
Re: Bloated MDs
« Reply #3 on: August 17, 2012, 06:16:49 am »
I agree, A desktop is not needed to run apps in Linux.
Hybrid core Gigabyte GA-EP45-UD3R m/b 2.8Ghz 2 gig ram. HVR1600 on the core. 2 Orbiter on Android for control 1 phone the other tablet. Running 10.04

Marie.O

  • Administrator
  • LinuxMCE God
  • *****
  • Posts: 3675
  • Wastes Life On LinuxMCE Since 2007
    • View Profile
    • My Home
Re: Bloated MDs
« Reply #4 on: August 17, 2012, 06:37:16 am »
I like the option to go to the desktop. Why? Because each PC in the household can function as a media director, and still have access to whatever computing needs need to be done.

Armor Gnome

  • Guru
  • ****
  • Posts: 309
    • View Profile
Re: Bloated MDs
« Reply #5 on: August 17, 2012, 04:15:17 pm »
It appears we are pretty down the middle for use of MD desktop environments.  Thank you for your opinions, especially from the developers who commented as I always appreciate that level of input to get a grasp on the goal or focus of LinuxMCE.

I personally feel strongly about the ability to choose the type of LinuxMCE experience you want, as long as 99.9% of processes go on without requiring user input.  As the current MD creation process goes all a user needs to do is set a PC to network boot from BIOS and turn it on.  No other input is necessary until the AV wizard starts, we even have a pretty splash screen so you don't have to see the text.

I have just started looking through the code necessary for these diskless creations and although I haven't found the exact loader yet for the desktop items I do have a suggestion.  Yes, I know my formating is not loader formal but I am expressing function here without eye glazing anyone with code examples.

timeout 5
default 0
 -run diskless_setup as is
 -init= as is
 
 -run nodesktop_diskless setup
 -init = newly altered by me

 -run custom_diskless
 -advanced option for things like putting the image on a NAS, audio only MD, etc

This is simple enough that users who choose to alter the MD creation process can, and those who like everything done for them can still turn it on and watch it go and the entire process is only 5 seconds longer.

I hope to compile my first installer this weekend for another project. Depending on how that goes and how comfortable I am with the process, I will grab some lmce sc and see if I can put together some testable scripts.

*Edit, just re-read tschak909's post and will check out the package database in web-admin.  The code I was looking at was coming from wiki>sourcecode>lmce site. 
I made a wiki!  Click here to check out my system.

JaseP

  • Addicted
  • *
  • Posts: 526
    • View Profile
    • JaseP's LinuxMCE Wiki User page
Re: Bloated MDs
« Reply #6 on: August 17, 2012, 05:15:41 pm »
I like the option to go to the desktop. Why? Because each PC in the household can function as a media director, and still have access to whatever computing needs need to be done.

My vote is with Posde on this...

Plus, realize that any apps that you use that are desktop oriented, like Hulu, the Firefox web interface (Web Admin Control) & game emulators will need at least a basic DE to display and/or operate properly. Ma=ny apps lack menu options to exit, and such, and rely on the DE for that.

Without at least something of a DE operating, you'll lose much of that. For example, if Firefox can't function properly (and I'm not saying it can't be made to, some other way), you're forced to use the Web admin on a non LinuxMCE machine attached to the internal network.

I agree that there's no need for a full fleshed out environment (word processing, desktop widgets, etc), but sometimes you need to use a program or utility. Of course, it could be possible to replace the existing UI with separate QT app components running on a slimmed down KDE desktop (not to say it should be).

I assume KDE was chosen to provide a full QT environment in the first place,... no?! Whether that was the reason, or some other, there is probably some underlying reason it was picked, because of something it provides.

There definitely should be some discussion on this. It IS possible to start a second X11 session on another console and run the desktop there, as an option (it is also a good way to run games that tax the system under a DE).
« Last Edit: August 17, 2012, 05:19:13 pm by JaseP »
See my User page on the LinuxMCE Wiki for a description of my system configuration (click the little globe under my profile pic).

tschak909

  • LinuxMCE God
  • ****
  • Posts: 5549
  • DOES work for LinuxMCE.
    • View Profile
Re: Bloated MDs
« Reply #7 on: August 17, 2012, 05:47:13 pm »
I can understand your vote on this JaseP. But your reasoning for it is blatantly inaccurate.

(1) xfwm4 is the window manager, and Orbiter is a window controller under that system. You do not need a DE for this.
(2) Firefox was never meant to be the default web browser, it will be replaced. But even with this, Orbiter can manipulate the window, even if it needs to be slightly bug fixed.
(3) The game emulations to run under the Game Player in LinuxMCE will NOT require a desktop environment, because they have either been patched to not need one, or have a method of communicating their state effectively.

As for why it was picked, it was simply tacked on because Paul Webber wanted a desktop. There was no thought to it, no design. KDE was chosen because at the time, the combination was the only one that properly would interact with Orbiter's unique compositing requirements. This is no longer the case. Orbiter does not use Qt, neither did much of anything else for that matter.

Any sort of desktop work can be done elsewhere, and the TV is _NOT_ the place for it. This is a geek cop out.

-Thom

JaseP

  • Addicted
  • *
  • Posts: 526
    • View Profile
    • JaseP's LinuxMCE Wiki User page
Re: Bloated MDs
« Reply #8 on: August 17, 2012, 06:56:43 pm »
Thanks for the background info, Thom,... It helps to clarify a lot of things.

Just a couple of personal preferences, which turn to questions...

It's nice to have certain utilities/programs;
  • A terminal window (preferably with translucency, so you can see underneath to web pages, PDFs, etc.)
  • A graphical text editor (so you don't have to go out to a terminal & use vi or nano)
  • A basic web browser
  • A small handful of nice, native Linux games
  • Some other native Linux apps (Skype?! etc?! ... depending on preferences)

Which brings up the questions;
  • Will dumping the KDE desktop, entirely, affect any of this in any way? I assume not, since xfwm4 is being used, and could supply the necessary wm controls.
  • Will editing xfwm4 preferences with the xfce settings manager allow a user to make any changes in appearance/behavior/etc in LinuxMCE? (Since xfwm4 is part of xfce)
  • Would any/all native apps/games need a wrapper to be able to use inputs (games controllers, etc.)?
  • Could a second X11 session (to run certain demanding apps/games) be started/stopped by the DCE router, by only listening for a particular keyboard combo, but passing all other inputs along to the X11 session and app? (just a theoretical question, for now)
See my User page on the LinuxMCE Wiki for a description of my system configuration (click the little globe under my profile pic).

mkbrown69

  • Guru
  • ****
  • Posts: 213
    • View Profile
Re: Bloated MDs
« Reply #9 on: August 17, 2012, 07:31:20 pm »
Good day folks!

Having been thinking about this for quite some time (but not having the full understanding of the LMCE architecture to implement it) I think both camps could be satisfied with the concept of 'roles' for net-booted devices.  My thoughts were along the lines of:

  • MD
  • Workstation (or laptop)
  • Workstation w/MD
  • Workstation w/orbiter

Imagine this: when a device is net-booted for the first time, the wizard asks what role this machine will be fulfilling (with some helpful text around it explaining what each does).  Then, the applicable software packages are applied onto the base OS to full-fill the role.  We're implementing a similar approach at work for server builds, using Puppet http://puppetlabs.com/puppet/puppet-open-source/, which is a configuration and compliance management tool.  It uses a component called Facter http://www.puppetlabs.com/puppet/related-projects/facter/ to determine facts about a client system (like architecture, virtual, OS Family/release, etc.) which can be used to take actions based on the facts it discovers about the system.  It can be used to configure software packages, user and service accounts, install or remove software, change system parameters (like sysctl), etc.  And, there's a nice community of pre-built modules http://forge.puppetlabs.com/modules, plus stuff on github, or  you can write your own (including facts you wish to discover, then act on).  

It's a powerful configuration framework which I think would be a good fit for LinuxMCE.  It would be a radical change in how LMCE works under-the-hood, and I think it would make future upgrades and life-cycle management activities a lot easier, as you can specify different things based on custom facts or facts like the OS version or hardware architecture.  Think Pi MD vs an x86 MD.  You can have the same role applied to both, but satisfy the architecture specific dependencies and configuration using the same toolset and policy.  You can also use it to manage the core and it's services.  There are implementations on the web where folks are using Puppet to build the PuppetMaster server, which is then used to build client systems (allowing them to bootstrap an entire environment, lets say in a disaster scenario).

Puppet is something that can be implemented incrementally, when each change you want to make is quantified, so it represents a low risk to stability.  Start with the easy and non-intrusive stuff first, and as the implementation matures, go for the more intrusive changes one-by-one.  That's the approach we're taking with 3 *nix OS Families, 4 hardware architectures, 4 hypervisors, and 10 OS variants in production.  I thought I'd throw this option out for discussion, since there's a lot of interest in making the MD's (and other PC's) fit-for-purpose.  Feel free to browse the links above, google it, or 'apt-cache show puppet puppetmaster facter' from your core.

Hope this provides some food for thought!  Thanks for your time!

/Mike
« Last Edit: August 17, 2012, 07:34:49 pm by mkbrown69 »

Marie.O

  • Administrator
  • LinuxMCE God
  • *****
  • Posts: 3675
  • Wastes Life On LinuxMCE Since 2007
    • View Profile
    • My Home
Re: Bloated MDs
« Reply #10 on: August 17, 2012, 07:39:09 pm »
* posde wonders what the big thing is? People who do not press the KDE Desktop button, don't have a problem other than maybe a gig of wasted space, so what?!

JaseP

  • Addicted
  • *
  • Posts: 526
    • View Profile
    • JaseP's LinuxMCE Wiki User page
Re: Bloated MDs
« Reply #11 on: August 17, 2012, 10:45:20 pm »
Good day folks!

Having been thinking about this for quite some time (but not having the full understanding of the LMCE architecture to implement it) I think both camps could be satisfied with the concept of 'roles' for net-booted devices.  My thoughts were along the lines of:

  • MD
  • Workstation (or laptop)
  • Workstation w/MD
  • Workstation w/orbiter

...

/Mike


That would add 3-4x the necessary MD generation scripts, yielding 3-4x the possible points for breakdown/bugs.
  • As for workstations, ... just install the OS of your choice. Why netboot? LinuxMCE will generally see shared drives it puts out (I think, anyway).
  • For workstations with Orbiter, install the WinOrbiter in WinXP-7 or using Wine in Linux (or resurrect the dedicated Linux Orbiter code and hack/recompile it to be an installable app).
  • For workstations with an MD, use VirtualBox to install a virtual machine MD.

What you're talking about would be easier with an Orbiter running on a desktop (in any one of several ways). LinuxMCE can make the media available to non LinuxMCE devices over the network, as a Samba share. You control other functions with an Orbiter... Even my own MD in a VM experiment is a bit over the top, a bit like running a TV tuner app on a desktop... Great for not doing productive work well multitasking, but really unnecessary, if you think about it.

Thom's got a point about not computing on a TV. Posde's got a point about, "so what?! So, just don't use it." Once the qOrbiter is done, it would make a lot of this moot, anyway.
See my User page on the LinuxMCE Wiki for a description of my system configuration (click the little globe under my profile pic).

Steve

  • Veteran
  • ***
  • Posts: 67
  • 16 Years Linux exp.
    • View Profile
Re: Bloated MDs
« Reply #12 on: August 18, 2012, 05:03:17 am »
I'm going to through this out there and I am probably going to get a lot of rap for this. KDE maybe a waste of 1 gig but it is also a resource hog and any of the desktops for that matter. that extra resource could be used in better ways. Here is an example take a computer lying around and install a distribution without a desktop. second install X and your chosen program. and call it from a command line. it will work, I have done this before.  
« Last Edit: August 18, 2012, 05:50:20 am by matrex »
Hybrid core Gigabyte GA-EP45-UD3R m/b 2.8Ghz 2 gig ram. HVR1600 on the core. 2 Orbiter on Android for control 1 phone the other tablet. Running 10.04

JaseP

  • Addicted
  • *
  • Posts: 526
    • View Profile
    • JaseP's LinuxMCE Wiki User page
Re: Bloated MDs
« Reply #13 on: August 18, 2012, 07:06:35 am »
KDE's not being called up unless you select it from the menu. The only resource it takes up, then, is the hard drive spacemon the Core. That's what Posde was saying.
See my User page on the LinuxMCE Wiki for a description of my system configuration (click the little globe under my profile pic).

Sigg3.net

  • Veteran
  • ***
  • Posts: 64
    • View Profile
Re: Bloated MDs
« Reply #14 on: August 18, 2012, 03:49:45 pm »
I've used it ALOT for troubleshooting, but that's because I'm more familiar with the GNU/Linux terminal than I am LMCE :)

I agree with Tschak though. No need for a full desktop. Gimme a web browser and a terminal window and I'm happy!
Running terminal in 1080p is just sexy. Neighbours must think I'm all Swordfish up in here:)