Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Idea: mass customization of Gentoo with Portage
View unanswered posts
View posts from last 24 hours

Goto page Previous  1, 2, 3, 4  Next  
Reply to topic    Gentoo Forums Forum Index Gentoo Chat
View previous topic :: View next topic  
Author Message
djh-world
Apprentice
Apprentice


Joined: 04 Jan 2004
Posts: 281
Location: Nottingham, UK

PostPosted: Sat May 28, 2005 4:35 pm    Post subject: Reply with quote

Heh, that's a really nice idea you have going there.

I'm rubbish with ebuilds and stuff, so I'd be no use here, but I'm quite intrigued by the idea.

You'd have to ensure all packages are stable though :)
_________________
djh-solutions :: freelance web design | solution provider
Back to top
View user's profile Send private message
ExZombie
Apprentice
Apprentice


Joined: 29 May 2004
Posts: 170

PostPosted: Sat May 28, 2005 5:52 pm    Post subject: Reply with quote

I think that such a system would require fixed USE flags. Because of that, and because of the huge amount of testing required anyway, there would probably be a point in distributing precompiled binary packages of everything installed by the meta ebuild.
Back to top
View user's profile Send private message
nixnut
Bodhisattva
Bodhisattva


Joined: 09 Apr 2004
Posts: 10974
Location: the dutch mountains

PostPosted: Sat May 28, 2005 6:46 pm    Post subject: Reply with quote

ExZombie wrote:
I think that such a system would require fixed USE flags. Because of that, and because of the huge amount of testing required anyway, there would probably be a point in distributing precompiled binary packages of everything installed by the meta ebuild.

Yeah, fixed use flags, which means you could do what the first poster want with profiles. So, no new infrastructure is needed then, if I understand things right.
_________________
Please add [solved] to the initial post's subject line if you feel your problem is resolved. Help answer the unanswered

talk is cheap. supply exceeds demand
Back to top
View user's profile Send private message
Drysh
Apprentice
Apprentice


Joined: 06 Apr 2005
Posts: 203
Location: São Paulo, Brazil

PostPosted: Sat May 28, 2005 8:38 pm    Post subject: Reply with quote

Let's start small. A selection of packages. If you take a look at gnome meta-package (/usr/portage/gnome-base/gnome/gnome-2.8.3-r1), you will see that it's very simple:
Code:
# Copyright 1999-2005 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/gnome-base/gnome/gnome-2.8.3-r1.ebuild,v 1.9 2005/05/18 02:08:32 weeve Exp $

DESCRIPTION="Meta package for the GNOME desktop"
HOMEPAGE="http://www.gnome.org/"

LICENSE="as-is"
SLOT="2.0"
# when unmasking for an arch
# double check none of the deps are still masked !
KEYWORDS="~alpha amd64 hppa ia64 ~mips ppc sparc x86"
IUSE="accessibility cdr dvdr hal"

S=${WORKDIR}

RDEPEND="!gnome-base/gnome-core

   >=dev-libs/glib-2.4.8
   >=dev-libs/atk-1.8
   >=x11-libs/gtk+-2.4.14
   >=x11-libs/pango-1.6
 .
 .
 .
   cdr? ( >=gnome-extra/nautilus-cd-burner-2.8.7 )
   dvdr? ( >=gnome-extra/nautilus-cd-burner-2.8.7 )
   hal? ( >=gnome-base/gnome-volume-manager-1.0.3 )
.
.
.
   accessibility? (
      >=gnome-extra/libgail-gnome-1.1
      >=gnome-base/gail-1.8.2
      >=gnome-extra/at-spi-1.6.2
      !ia64?( >=app-accessibility/dasher-3.2.13 )
      >=app-accessibility/gnome-mag-0.11.14
      >=app-accessibility/gnome-speech-0.3.6
      >=app-accessibility/gok-0.11.17
      >=app-accessibility/gnopernicus-0.9.19 )"


# unrelated
# scrollkeeper
# pkgconfig
# intltool
# gtk-doc

pkg_postinst() {

   einfo "Note that to change windowmanager to metacity do: "
   einfo " export WINDOW_MANAGER=\"/usr/bin/metacity\""
   einfo "of course this works for all other window managers as well"
   echo
   einfo "To take full advantage of GNOME's functionality, please start"
   einfo "the File Alteration Monitoring service (famd) before using"
   einfo "GNOME, unless you have a specific reason for not doing so."
   echo
   einfo "To start famd now use:"
   einfo "'/etc/init.d/famd start'"
   echo
   einfo "And please ensure you add it to the default runlevel using:"
   einfo "'rc-update add famd default'"
   echo

}
Let's take a look at it...
- First we have the description other things to identify the package.
- Then we have the keywords (arch) and the use flags.
- Then the list of packages.
- And in the end, post install information.

Making sure the packages work is something the rest of Gentoo is taking care... All we need to do is to select packages that work together. And, if you think a choice need to be made, make 2 meta-packages. This is not about choice, let Gentoo do this. This is about building a system without having too much work. This is a working tool. Examples:
- Someone ask you (hires you) to set up an office machine (or hundreds of them). What do you need there? How about asking the community what do you need? How about a few unofficial ebuilds with recomended software for an office machine?
- Do you have a little syster, a mother, a brother, a father? They don't know how to use linux, but they would like to try. If only there would be a list of software that you could install in their computer. We usually test programs: "Let me emerge this, if it's not good I'll emerge -C later. No problem." But they cannot do this. And they don't want to learn - that's why they need you. Someone has to select the software for them. Maybe the community could help.
- Why do we keep making new threads asking which software to choose? How about a list we could choose? And a collection of packages that work together.. Don't you like them? Change the ebuild! That's why they have to be unofficial. You download the set, and until you dowload another, it won't change. You change it, and an emerge --sync wont try to revert to the original.

So.. How about starting this? Now! Since I'm using at home a computer with gnome, I would like to start with that. Do you want something else? Fine. But we need to start somewhere. And gnome is a good idea for me.

(I'll post the suggestion in a second. This post is too long already) ;)
Back to top
View user's profile Send private message
Drysh
Apprentice
Apprentice


Joined: 06 Apr 2005
Posts: 203
Location: São Paulo, Brazil

PostPosted: Sat May 28, 2005 9:15 pm    Post subject: Reply with quote

Description of the system: A home computer, using X with Gnome. We need most of the general use tools (office, image, sound). We don't need to have a light enviroment, but a nice looking one. And it has to be easy to find things. We don't need a state of the art enviroment, but good tools. (If anyone wants to describe it bette, please go on. It's the computer you and your parents would use at home, if you chose gnome.)

Applications:
Code:
Browser . . . . Firefox . . . . www-client/mozilla-firefox
Office . . . . .Open Office . . app-office/openoffice
Antivirus . . . Clamav . . . . .app-antivirus/clamav
IM . . . . . . .Gaim . . . . . .net-im/gaim
Image Editor . .GIMP . . . . . .media-gfx/gimp
Email . . . . . ? . . . . . . . ?
Media . . . . . ? . . . . . . . ?
File Manager . .Nautilus . . . .gnome-base/nautilus
Game . . . . . .Gnome Games . . gnome-extra/gnome-games

What else?
Back to top
View user's profile Send private message
John-Boy
Guru
Guru


Joined: 23 Jun 2004
Posts: 442
Location: Desperately seeking moksha in all the wrong places

PostPosted: Sat May 28, 2005 9:46 pm    Post subject: Reply with quote

Would you need an antivirus package ?
_________________
Like the Roman, I seem to see "the River Tiber foaming with much blood"
Back to top
View user's profile Send private message
pjp
Administrator
Administrator


Joined: 16 Apr 2002
Posts: 20054

PostPosted: Sat May 28, 2005 9:54 pm    Post subject: Reply with quote

What would be even better, is a script to create customized meta-packages. For example... I want a firewall. ./meta-package-generating-script shows me options for firewall related programs. I select which ones I want, and they are emerged.

Why bother with the meta-package, if the script can figure out what to emerge? So I can copy the meta-package to another box and use emerge <my-customized-firewall-metapackage>. I'm sure its not trivial, but it'd still be nice.
_________________
Quis separabit? Quo animo?
Back to top
View user's profile Send private message
Drysh
Apprentice
Apprentice


Joined: 06 Apr 2005
Posts: 203
Location: São Paulo, Brazil

PostPosted: Sat May 28, 2005 11:05 pm    Post subject: Reply with quote

pip: This is very close to what "world" is. We select the packages from portage, what you select is in world file. The problem is.. Do they work together?

John-Boy: Maybe not. But my goal is to have a set of non-reduntant packages that could be used in this set. To remove the antivirus all you need is to add a # before the single line that sets it. Who would use an antivirus? People who receive and send e-mails. If I cannot check for virus, I will have problems with friends that use that terrible operational system (Don't use its name.. brings bad luck). And unfortunately, I have to send files to people that use that thing: "Did you check for virus?" "Virus? What's that? I use Linux." :P

Explaining it a bit more (and developing the idea): We choose a set of programs that can work together, and that does everything the normal user would. Then we comment the ebuild, so a regular user (like me, not my grandma) may change it without having to study portage and each package.

There is one already: It's called live-cd! Does anyone have the list of packages that I have to emerge to have the live-cd? A working enviroment, with everything someone need. I don't mean a bootable cd, but which packages do I have to choose to build that? If I knew that, then I could make a package that depends on all those packages, put it in the local directory of portage, and type: emerge my_package_name And my system would be ready (after a day or two emerging). :)

The live-cd is much more than that, it has to find drivers, to have options of kernel, etc. This one doesn't need any of these. The system is suposed to be instaled, and a text console working (after stage 3). Only a selection of packages that work together.
Back to top
View user's profile Send private message
d4n1el
Tux's lil' helper
Tux's lil' helper


Joined: 21 Jun 2004
Posts: 76

PostPosted: Sat May 28, 2005 11:23 pm    Post subject: Reply with quote

i think this is a good idea, even for people like me, who started our linux "experince" with gentoo..
when i finished the whole installation and got the console, i didn't know what to do, or which programs to emerge. Someone told me kde and that was a good beginning, but to have the possibiliy to get the most importent program right from the start would be very good...
So you don't need to first found out nice webbrowser to fin a good irc-app to ask someone about which file-manager is the best..


About the list with good things to start with i would add:

Email: Thunderbird
Media: XMMS and xine-ui
Back to top
View user's profile Send private message
electrofreak
l33t
l33t


Joined: 30 Jun 2004
Posts: 713
Location: Ohio, USA

PostPosted: Sun May 29, 2005 2:13 am    Post subject: Reply with quote

Interesting idea. We could have server packages too:

web-server: apache, php, mysql, tidy
file-server: samba, and virus scanning software
irc-server: (whatever is needed here)

for the webserver, we could even go as far as to actually install all the common php apps that are in portage, such as phpBB or phpsysinfo. Or even, if X is installed, we could install web developement software.
_________________
Desktop: ABit AN8, Athlon64 X2 4400+ 939 2.75GHz, 2x1GB Corsair XMS DDR400, 2x160GB SATA RAID-0, 2x20"W, Vista Ultimate x64
Laptop: 15.4" MacBook Pro 2.4Ghz, 2x1GB RAM, 160GB, Mac OS X 10.5.1
Server: PIII 550Mhz, 3x128MB RAM, 160GB, Ubuntu Server 7.10
Back to top
View user's profile Send private message
FastTurtle
Guru
Guru


Joined: 03 Sep 2002
Posts: 475
Location: Flakey Shake & Bake Caliornia, USA

PostPosted: Sun May 29, 2005 3:15 am    Post subject: Reply with quote

This is the direction that the split kde ebuilds are moving.

For example, my system includes these apps to fill these needs:
konq - Filebrowser
Firefox - Web browser
Kate/Kwrtie - Notepad replacements with spell check
Kuickshow - Image Thumbnail viewer with full screen mode :AKA Irfan View
Gimp - Image Manipulation
xsane/sane-front/backends/kooka - Scanner
Cups - printing
bogofilter - antispam
kmail -mail
knode - newsgroups
openoffice - office suite
kgpg - pgp keys gui ** could be skipped along with gpg but why?
acroread
xmms and mplayer for multimedia
add in kcalc, ark, xfreecell and kpat, and you've got almost everything covered for a windows replacement. If you need additional apps, just add them from kde since everything plays well together.
_________________
AsRock B550 Phantom Gaming 4
128GB 3200 Mhz memory
4x 4TB Sata - 2x 2TB Sata SSD - 4x 450GB SaS - 3x 900GB SaS - 72GB SaS for Boot
LSI 9211-8i in HBA mode for all of the SaS drives
Radeon 6800 (Non XT) for GPU
Back to top
View user's profile Send private message
djh-world
Apprentice
Apprentice


Joined: 04 Jan 2004
Posts: 281
Location: Nottingham, UK

PostPosted: Sun May 29, 2005 10:19 am    Post subject: Reply with quote

pjp wrote:
What would be even better, is a script to create customized meta-packages. For example... I want a firewall. ./meta-package-generating-script shows me options for firewall related programs. I select which ones I want, and they are emerged.

Why bother with the meta-package, if the script can figure out what to emerge? So I can copy the meta-package to another box and use emerge <my-customized-firewall-metapackage>. I'm sure its not trivial, but it'd still be nice.


pjp, thats a really good idea, but I think it's kind of going against the proposal above.

I think what Drysh is saying is, create a meta-package that is readily configured, ready to emerge straight out of the box.

For say, a family PC.

Install Gentoo -> Install Metapackage = Usable Machine
_________________
djh-solutions :: freelance web design | solution provider
Back to top
View user's profile Send private message
sven-tek
Guru
Guru


Joined: 06 May 2003
Posts: 339

PostPosted: Sun May 29, 2005 9:58 pm    Post subject: Reply with quote

Hi Drysh and others,

i was pointed here because i had a similar idea ( https://forums.gentoo.org/viewtopic-p-2450834.html#2450834 ), it ended in my own gnome-desktop ebuild.

I would like to start with an Meta-Ebuild that installs a ubuntu-like Linux, thats how we could get around the endless diskussion about what a default gentoo-based desktop should implement. This would never stop.

Thats how you could get started very fast.
And after that, a voting system would be helpfull to find out witch software should make it into the meta-ebuild. Well, anyhow we would need two trees for gnome and kde-users.

Keep this up
Back to top
View user's profile Send private message
pjp
Administrator
Administrator


Joined: 16 Apr 2002
Posts: 20054

PostPosted: Sun May 29, 2005 10:10 pm    Post subject: Reply with quote

Drysh wrote:
pip: This is very close to what "world" is. We select the packages from portage, what you select is in world file. The problem is.. Do they work together?
I'm pretty certain I read that using "world" for that purpose was Bad Thing. Don't remember why, and it was quite a while ago, so maybe something has changed (or it was altogether wrong).

djh-world wrote:
pjp, thats a really good idea, but I think it's kind of going against the proposal above.

I think what Drysh is saying is, create a meta-package that is readily configured, ready to emerge straight out of the box.
Right. This is an extension of that. This script could even generate those packages :D
_________________
Quis separabit? Quo animo?
Back to top
View user's profile Send private message
sven-tek
Guru
Guru


Joined: 06 May 2003
Posts: 339

PostPosted: Sun May 29, 2005 10:10 pm    Post subject: Reply with quote

in addition, it would be easy to provide pre-compiled 686-packages for that desktop-meta-ebuilds

Last edited by sven-tek on Sun May 29, 2005 10:19 pm; edited 1 time in total
Back to top
View user's profile Send private message
sven-tek
Guru
Guru


Joined: 06 May 2003
Posts: 339

PostPosted: Sun May 29, 2005 10:19 pm    Post subject: get the job done, fast Reply with quote

pjp wrote:
What would be even better, is a script to create customized meta-packages. For example... I want a firewall. ./meta-package-generating-script shows me options for firewall related programs. I select which ones I want, and they are emerged.

I think such a script is not good, people who want to decide what software to use can work with portage as it is now.

Those meta-packages would be helpfull for people who just want to get the job done, fast.
Back to top
View user's profile Send private message
Genone
Retired Dev
Retired Dev


Joined: 14 Mar 2003
Posts: 9509
Location: beyond the rim

PostPosted: Sun May 29, 2005 10:26 pm    Post subject: Reply with quote

GLEP 21 strikes me as the better/easier way to do such a thing.
Back to top
View user's profile Send private message
pjp
Administrator
Administrator


Joined: 16 Apr 2002
Posts: 20054

PostPosted: Sun May 29, 2005 10:35 pm    Post subject: Re: get the job done, fast Reply with quote

sven-tek wrote:
I think such a script is not good, people who want to decide what software to use can work with portage as it is now.
So making scripts to make jobs easier to do is "not good?"

I'd forgotten about GLEP 21.

EDIT:
Genone... any idea what the status is... looks dead at Draft.
_________________
Quis separabit? Quo animo?
Back to top
View user's profile Send private message
Genone
Retired Dev
Retired Dev


Joined: 14 Mar 2003
Posts: 9509
Location: beyond the rim

PostPosted: Sun May 29, 2005 11:20 pm    Post subject: Reply with quote

Well, set support itself more or less exists in 2.1, just needs to be integrated into emerge, but that's the tough part.
Back to top
View user's profile Send private message
sven-tek
Guru
Guru


Joined: 06 May 2003
Posts: 339

PostPosted: Mon May 30, 2005 6:17 am    Post subject: Reply with quote

what advantage would a set have against meta-packages?
Back to top
View user's profile Send private message
pjp
Administrator
Administrator


Joined: 16 Apr 2002
Posts: 20054

PostPosted: Mon May 30, 2005 6:51 am    Post subject: Reply with quote

sven-tek wrote:
what advantage would a set have against meta-packages?
I can think of two... sets probably have a better chance at being implemented, and they seem much more simple:
GLEP 21 wrote:
Syntax for the package list file is the same as the world file syntax, as described in the Portage manpage [2], with one addition: sets may not be 'inherited' by other sets, only packages may be listed. There is no limitation to the number of packages in a set or to the number of sets a package may belong to.

_________________
Quis separabit? Quo animo?
Back to top
View user's profile Send private message
sven-tek
Guru
Guru


Joined: 06 May 2003
Posts: 339

PostPosted: Mon May 30, 2005 7:13 am    Post subject: Reply with quote

both are no arguments for sets,

* meta-packages are implemeted right now
* syntax is that easy i could build my own just by looking at the gnome-package
Back to top
View user's profile Send private message
pjp
Administrator
Administrator


Joined: 16 Apr 2002
Posts: 20054

PostPosted: Tue May 31, 2005 2:57 pm    Post subject: Reply with quote

sven-tek wrote:
both are no arguments for sets,
Your dismissal doesn't negate the argument. If you don't like it, that's a different issue.

sven-tek wrote:
* meta-packages are implemeted right now
Overlays are implemented too, so nothing is stopping you.

sven-tek wrote:
* syntax is that easy i could build my own just by looking at the gnome-package
Even a simple meta-package ebuild is more complicated... sorry.
_________________
Quis separabit? Quo animo?
Back to top
View user's profile Send private message
sven-tek
Guru
Guru


Joined: 06 May 2003
Posts: 339

PostPosted: Tue May 31, 2005 4:27 pm    Post subject: Reply with quote

perhaps sets are simple, ebuilds are simple too

Meta-packages have the advantage that they can be mixed and inherited. Therefore they are more flexible.

Just think of
Quote:
emerge system gnome

its not possible because of sets. And from the users point of view it makes no sence to separate system from other ebuilds. afaik of course
Back to top
View user's profile Send private message
lefou
Apprentice
Apprentice


Joined: 18 Feb 2004
Posts: 199
Location: Germany, Lusatia

PostPosted: Thu Jun 16, 2005 3:14 pm    Post subject: Reply with quote

I use meta-packages a while ago like my thinkpad one (/var/portage/local/app-laptop/thinkpad-meta/thinkpad-meta-0.1.ebuild):
Code:
# Thinkpad meta package

inherit eutils
DESCRIPTION="Meta-ebuild to merge all nessesarry ebuild for a IBM ThinkPad Laptop"
HOMEPAGE=""
# SRC_URI=""
LICENSE=""
SLOT="0"
KEYWORDS="x86"
IUSE="acpi"

DEPEND="acpi? ( app-laptop/ibm-acpi ) \
        !acpi? ( app-laptop/thinkpad app-laptop/tpctl ) \
        app-laptop/laptop-mode-tools \
        sys-power/hibernate-script \
        "


It just works :), so no one need to implement more code in portage that adds nothing new. You get version-support, too. Noone has to maintain and to comment one more feature. And then the hundrets of questions, about the differences between world, and a meta-package and a self-written set.

Another thought:
Do you have ever tried to copy an old world-file to a fresh install and call:
Code:

emerge world

... nothing will happen. :( You have to call
Code:

for i in $(cat /var/lib/portage/world); do emerge $i; done


... and if an error occures, where to resume -- the worldfile is unsorted.

A set-feature make only then sense, if you can remove a complete set with all dependencies, that are no longer needed by another set or world-file.

Just my two cents
lefou
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Gentoo Chat All times are GMT
Goto page Previous  1, 2, 3, 4  Next
Page 2 of 4

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum