Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 56415 - Let Portage handle 3rd party stuff
Summary: Let Portage handle 3rd party stuff
Status: RESOLVED DUPLICATE of bug 56485
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Core system (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Portage team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-07-07 23:21 UTC by John Richard Moser
Modified: 2005-07-17 13:06 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description John Richard Moser 2004-07-07 23:21:13 UTC
Currently, it's possible to create a portage overlay and add ebuilds to it for third party software.  This isn't the easiest thing to do, and shuts out most third party support.  Consider the readme:

==Installation==

Gentoo Linux
1.  Open the file /etc/make.conf as root
2.  Find the line that begins with PORTAGE_OVERLAY and add "/usr/local/overlays/xxxx" to it, space separated from any other entries
3.  Make the directory above
4.  Mount the cd at /mnt/cdrom
5.  Copy the contents of /mnt/cdrom/gentoo/overlay/ to the directory you just made
6.  run the command:  emerge xxxx

With a few simple portage features, it would be trivial for third party tools to request the root password to merge an overlay with a third party overlay directory such as /usr/local/portage/3po .  The readme would then consist of the following:

==Installation==

1.  Insert the CD
2.  Click on the CD Rom icon in KDE or Gnome
3.  Click the icon marked "Setup" in the CDRom.
  Setup will automatically detect your distribution and perform the necessary installation steps.  It may ask for your root password during this process.

This could already be done; however, it would require the software to take a guess at where to create a portage overlay to avoid clobbering existing data, as well as prodding around in make.conf (do you REALLY want third party software doing this?).

Portage could be supplied a variable, THIRD_PARTY_OVERLAY, from make.conf.  This could default to /usr/local/portage/3po in make.globals.  This would give a proper base overlay to merge third party packages into.

The idea here would be to *support* current software business models, such as those employed by Voyetra, Maxis, 3DRealms/IDSoftware, and even Microsoft.  Software could come in CD with an installer which would *sanely* add the necessary files to the system rather than randomly prodding around and guessing what to do.

This would require a new command for portage:  overlay.  Syntax would be:

overlay merge path/to/overlay [path/to/target/overlay]

where [path/to/target/overlay] defaults to the value of THIRD_PARTY_OVERLAY.  Most installers would execute the following command:

overlay merge gentoo/overlay

The installer would most likely be /mnt/cdrom/setup, with /mnt/cdrom/gentoo/overlay being the overlay.  A proper gentoo install script may be as follows:

if [ ! "${USER}" = "root" ]; then
  echo You must be root!
  exit -100
fi
overlay merge gentoo/overlay
tar c image > /usr/portage/distfiles/my-package-1.0.tar
ebuild `overlay get`/cat-sub/my-package/my-package-1.0.ebuild digest
emerge =cat-sub/my-package-1.0
echo Installation complete.

I am interested in supporting non-open-source software, although I use open source software almost exclusively (aside from java).  This would give vendors an easy way to support gentoo as a target system.
Comment 1 Nicholas Jones (RETIRED) gentoo-dev 2004-07-08 14:05:54 UTC

*** This bug has been marked as a duplicate of 56485 ***