Discussion:
[ANNOUNCEMENT] Cygwin/XFree86 setup.exe packages available for comments and testing
Harold Hunt
2002-04-18 01:14:30 UTC
Permalink
I have setup an anonymous ftp site with preliminary Cygwin/XFree86 setup.exe
packages:
ftp://huntharo-4.user.msu.edu/pub/cygwin/

These is based entirely off of Ian Burrell's work.

My primary concerns that I don't know how to resolve are:
1) I didn't do the XFree86-base "meta" package properly. setup.exe does not
list XFree86-base as a package and it doesn't enforce the dependencies of
the other packages on XFree86-base.

2) I'm not sure why, but uninstalling packages often leaves files around.
For example, uninstalling XFree86-f100 delete all files from
/usr/X11R6/lib/X11/fonts/100dpi/ except for "UTRG__24.pcf.gz". Weird.

3) We may need a short post-install script, based off of Xinstall.sh, that
runs mkfontdir in the /usr/X11R6/lib/X11/fonts/local and
/usr/X11R6/lib/X11/fonts/misc font directories. Xinstall.sh says it does
this to make sure that these directories are "up to date". I guess that
every font package has the right to install fonts in local or misc, but it
seems that none of them do. Perhaps this won't matter.


That's it for now.

I'm awaiting feedback,

Harold
Christopher Faylor
2002-04-18 02:54:51 UTC
Permalink
Post by Harold Hunt
I have setup an anonymous ftp site with preliminary Cygwin/XFree86
setup.exe packages: ftp://huntharo-4.user.msu.edu/pub/cygwin/
Looks like you figured out upset. Sorry about not responding.
Post by Harold Hunt
These is based entirely off of Ian Burrell's work.
1) I didn't do the XFree86-base "meta" package properly. setup.exe
does not list XFree86-base as a package and it doesn't enforce the
dependencies of the other packages on XFree86-base.
It needs at least an empty tar file.
Post by Harold Hunt
2) I'm not sure why, but uninstalling packages often leaves files
around. For example, uninstalling XFree86-f100 delete all files from
/usr/X11R6/lib/X11/fonts/100dpi/ except for "UTRG__24.pcf.gz". Weird.
There was another report of cygwin not removing files in the cygwin
mailing list. Was that possibly the last in the list from a
/etc/setup/whatever.lst.gz file?
Post by Harold Hunt
3) We may need a short post-install script, based off of Xinstall.sh,
that runs mkfontdir in the /usr/X11R6/lib/X11/fonts/local and
/usr/X11R6/lib/X11/fonts/misc font directories. Xinstall.sh says it
does this to make sure that these directories are "up to date". I
guess that every font package has the right to install fonts in local
or misc, but it seems that none of them do. Perhaps this won't matter.
How about mounting the font directory in binmode, too?

cgf
Harold Hunt
2002-04-18 05:02:51 UTC
Permalink
Post by Christopher Faylor
Looks like you figured out upset. Sorry about not responding.
Actually, I did the same thing that Ian did and reverted to the upset from:
***@sources.redhat.com:/cvs/src

in the directory:
winsup/cinstall/temp

That version of upset reports the version number as the whole file name
before the .tar.bz2 (i.e. XFree86-bin-4.2.0-1 instead of 4.2.0-1) and also
manages to mangle the version reported from setup.exe:
setup-version: 2.194.2.24^@ %d.%d.%d.%d^@Can't

Oh well, at least I got the script to do a little bit of what I needed it
for. :)
Post by Christopher Faylor
It needs at least an empty tar file.
Okay. I'm working on that now.
Post by Christopher Faylor
Post by Harold Hunt
2) I'm not sure why, but uninstalling packages often leaves files
around. For example, uninstalling XFree86-f100 delete all files from
/usr/X11R6/lib/X11/fonts/100dpi/ except for "UTRG__24.pcf.gz". Weird.
There was another report of cygwin not removing files in the cygwin
mailing list. Was that possibly the last in the list from a
/etc/setup/whatever.lst.gz file?
Yes. That is it exactly. I also tried this with the XFree86-bin file and
it failed to remove libXxf86vm.a, which was the last file in
XFree86-bin.lst.gz.
Post by Christopher Faylor
Post by Harold Hunt
3) We may need a short post-install script, based off of Xinstall.sh,
that runs mkfontdir in the /usr/X11R6/lib/X11/fonts/local and
/usr/X11R6/lib/X11/fonts/misc font directories. Xinstall.sh says it
does this to make sure that these directories are "up to date". I
guess that every font package has the right to install fonts in local
or misc, but it seems that none of them do. Perhaps this won't matter.
How about mounting the font directory in binmode, too?
Excellent idea. Now I just need someone to write that script. Shouldn't be
too hard. Any takers?


Harold
Christopher Faylor
2002-04-18 05:12:20 UTC
Permalink
Post by Harold Hunt
Post by Christopher Faylor
Looks like you figured out upset. Sorry about not responding.
Actually, I did the same thing that Ian did and reverted to the upset
in the directory: winsup/cinstall/temp
I'd forgotten about that directory. It's nuked now.

The syntax for upset should just be "upset dir" where `dir' is the
directory containing the distribution. setup.ini will go to stdout.

upset -u setup.ini dir

will update an existing setup.ini.

cgf
Harold Hunt
2002-04-18 05:18:19 UTC
Permalink
Post by Christopher Faylor
The syntax for upset should just be "upset dir" where `dir' is the
directory containing the distribution. setup.ini will go to stdout.
upset -u setup.ini dir
will update an existing setup.ini.
I beg to differ. From my "packages" directory that contains contrib,
release, etc. I have run:
upset .
upset ./
upset ../packages
upset contrib/

You get the idea. Every single time I get:
$ ../upset/infra/bin/cygwin/upset .
# This file is automatically generated. If you edit it, your
# edits will be discarded next time the file is generated.
# See http://cygwin.com/setup.html for details.
#
setup-timestamp: 1019106912
setup-version: 2.194.2.24


The new upset doesn't seem to work for me. Perhaps it is just a problem
with the structure of our package tree.

Harold
Christopher Faylor
2002-04-18 05:28:04 UTC
Permalink
Post by Harold Hunt
Post by Christopher Faylor
The syntax for upset should just be "upset dir" where `dir' is the
directory containing the distribution. setup.ini will go to stdout.
upset -u setup.ini dir
will update an existing setup.ini.
I beg to differ.
Try setting it up like sourceware then. The directory defaults to 'release'.
Just do 'upset -u setup.ini' in a directory containing a the 'release' directory.

cgf
Harold Hunt
2002-04-18 05:37:08 UTC
Permalink
Post by Christopher Faylor
Try setting it up like sourceware then. The directory defaults to 'release'.
Just do 'upset -u setup.ini' in a directory containing a the
'release' directory.
I just moved contrib to release and the new upset works like a dream!

Harold
Post by Christopher Faylor
-----Original Message-----
Sent: Thursday, April 18, 2002 1:28 AM
Subject: Re: [ANNOUNCEMENT] cygwin/xfree86 setup.exe packages available
for comments and testing
Post by Harold Hunt
Post by Christopher Faylor
The syntax for upset should just be "upset dir" where `dir' is the
directory containing the distribution. setup.ini will go to stdout.
upset -u setup.ini dir
will update an existing setup.ini.
I beg to differ.
Try setting it up like sourceware then. The directory defaults to 'release'.
Just do 'upset -u setup.ini' in a directory containing a the
'release' directory.
cgf
Christopher Faylor
2002-04-18 05:39:50 UTC
Permalink
Post by Harold Hunt
Post by Christopher Faylor
Try setting it up like sourceware then. The directory defaults to
'release'. Just do 'upset -u setup.ini' in a directory containing a
the 'release' directory.
I just moved contrib to release and the new upset works like a dream!
Good. I think I fixed the bug with reading directories, too. That
was a "feature" that I added in the last week. Never tested it and,
surprise!, it didn't work.

cgf
Harold Hunt
2002-04-18 05:30:22 UTC
Permalink
I just updated the packages at
ftp://huntharo-4.user.msu.edu/pub/cygwin/

to have a working dependency between XFree86-base and the base XFree86
packages, such as XFree86-xserv, XFree86-fnts, etc.

There were two changes required:

1) 'touch contrib/XFree86/XFree86-base/XFree86-base-4.2.0-1.tar.bz2'

2) upset took the list of requirements from XFree86-base/setup.hint and put
them in quotes ("cygwin ...") when it created setup.ini. upset didn't do
this for any other packages and the Cygwin setup.ini doesn't have quotes
around dependency lists, so I guess that the quotes were peculiar to this
version of upset, perhaps combined with a list of dependencies that is
longer than one line. I removed the quotes from the 'requires' list from
XFree86-base and all is now well.


Dependencies work for installing. The behavior I noticed when uninstalling
is that dependencies are ignored. I'm guessing that setup.exe was designed
that way because there isn't really a good way to handle dependencies when
uninstalling.


Harold
Christopher Faylor
2002-04-18 05:34:16 UTC
Permalink
Post by Harold Hunt
2) upset took the list of requirements from XFree86-base/setup.hint and put
them in quotes ("cygwin ...") when it created setup.ini. upset didn't do
this for any other packages and the Cygwin setup.ini doesn't have quotes
around dependency lists, so I guess that the quotes were peculiar to this
version of upset, perhaps combined with a list of dependencies that is
longer than one line. I removed the quotes from the 'requires' list from
XFree86-base and all is now well.
That version of upset is an obsolete, buggy version. That's why I removed
it.

cgf
Ian Burrell
2002-04-18 06:01:34 UTC
Permalink
Post by Christopher Faylor
Post by Harold Hunt
Post by Christopher Faylor
Looks like you figured out upset. Sorry about not responding.
Actually, I did the same thing that Ian did and reverted to the upset
in the directory: winsup/cinstall/temp
I'd forgotten about that directory. It's nuked now.
Where is the real version? That was the only upset in that CVS
repository. Is there some other CVS repository?

- Ian
--
***@znark.com
http://www.znark.com/
Benjamin Riefenstahl
2002-04-19 21:17:56 UTC
Permalink
Post by Harold Hunt
Excellent idea. Now I just need someone to write that script.
Shouldn't be too hard. Any takers?
How about

fontdir=/usr/X11R6/lib/X11/fonts
wfontdir=`cygpath -w $fontdir`
mount -bfs $wfontdir $fontdir 2> /dev/null || mount -bfu $wfontdir $fontdir

IOW, create a system mount in binary mode on the font directory,
disregarding any existing mount on the same place. If the user is not
allowed to create a system mount, create a user mount instead.

This would break when there already is a user mount in text mode.
That seems pretty unlikely, though.


so long, benny
Christopher Faylor
2002-04-20 00:44:48 UTC
Permalink
Post by Christopher Faylor
Post by Harold Hunt
Excellent idea. Now I just need someone to write that script.
Shouldn't be too hard. Any takers?
How about
fontdir=/usr/X11R6/lib/X11/fonts
wfontdir=`cygpath -w $fontdir`
mount -bfs $wfontdir $fontdir 2> /dev/null || mount -bfu $wfontdir $fontdir
IOW, create a system mount in binary mode on the font directory,
disregarding any existing mount on the same place. If the user is not
allowed to create a system mount, create a user mount instead.
This would break when there already is a user mount in text mode.
That seems pretty unlikely, though.
This looks pretty good to me.

How about something like this, though:

fontdir=/usr/X11R6/lib/X11/fonts
wfontdir=`cygpath -w $fontdir`
umount -u $fontdir 2>/dev/null
mount -bfs $wfontdir $fontdir 2> /dev/null || mount -bfu $wfontdir $fontdir

Just to ensure that there is no user mount?

Btw, I like the use of the fontdir variable in this context. It's a
little thing, but...

cgf
Ian Burrell
2002-04-18 06:19:55 UTC
Permalink
Post by Christopher Faylor
Post by Harold Hunt
1) I didn't do the XFree86-base "meta" package properly. setup.exe
does not list XFree86-base as a package and it doesn't enforce the
dependencies of the other packages on XFree86-base.
It needs at least an empty tar file.
XFree86-base would be the perfect place to put Cygwin specific
documentation.
Post by Christopher Faylor
Post by Harold Hunt
3) We may need a short post-install script, based off of Xinstall.sh,
that runs mkfontdir in the /usr/X11R6/lib/X11/fonts/local and
/usr/X11R6/lib/X11/fonts/misc font directories. Xinstall.sh says it
does this to make sure that these directories are "up to date". I
guess that every font package has the right to install fonts in local
or misc, but it seems that none of them do. Perhaps this won't matter.
How about mounting the font directory in binmode, too?
Is there a way to detect if the fonts directory is already mounted in
binmode? That is the default, isn't it.

- Ian
--
***@stanfordalumni.org
http://www.znark.com/
Billinghurst, David (CRTS)
2002-04-18 06:41:31 UTC
Permalink
i have just downloaded and installed.

I needed to add /usr/X11R6/bin to PATH, and set DISPLAY.
Client apps work fine using Exceed as server. I have
"real work" going on so I can't fiddle too much.


-----Original Message-----
From: Harold Hunt [mailto:***@msu.edu]
Sent: Thursday, 18 April 2002 3:30
To: cygwin-***@cygwin.com
Cc: cygx
Subject: [ANNOUNCEMENT] Cygwin/XFree86 setup.exe packages with
dependencies


I just updated the packages at
ftp://huntharo-4.user.msu.edu/pub/cygwin/

to have a working dependency between XFree86-base and the base XFree86
packages, such as XFree86-xserv, XFree86-fnts, etc.
Harold Hunt
2002-04-18 13:06:10 UTC
Permalink
David,
Post by Billinghurst, David (CRTS)
I needed to add /usr/X11R6/bin to PATH, and set DISPLAY.
So you didn't use startxwin.bat?

startxwin.bat is still included in the distribution and it is the preferred
way to start.

Harold
Post by Billinghurst, David (CRTS)
-----Original Message-----
From: Billinghurst, David (CRTS)
Sent: Thursday, April 18, 2002 2:42 AM
To: Harold Hunt
Cc: cygx
Subject: RE: [ANNOUNCEMENT] Cygwin/XFree86 setup.exe packages with
dependencies
i have just downloaded and installed.
I needed to add /usr/X11R6/bin to PATH, and set DISPLAY.
Client apps work fine using Exceed as server. I have
"real work" going on so I can't fiddle too much.
-----Original Message-----
Sent: Thursday, 18 April 2002 3:30
Cc: cygx
Subject: [ANNOUNCEMENT] Cygwin/XFree86 setup.exe packages with
dependencies
I just updated the packages at
ftp://huntharo-4.user.msu.edu/pub/cygwin/
to have a working dependency between XFree86-base and the base XFree86
packages, such as XFree86-xserv, XFree86-fnts, etc.
Robert Collins
2002-04-18 07:55:11 UTC
Permalink
Post by Christopher Faylor
-----Original Message-----
Sent: Thursday, April 18, 2002 3:30 PM
Dependencies work for installing. The behavior I noticed
when uninstalling is that dependencies are ignored. I'm
guessing that setup.exe was designed that way because there
isn't really a good way to handle dependencies when uninstalling.
Yeah. On uninstalling we need some user interaction, and the chooser
isn't quite there to do that cleanly (yet).

Rob
Teun Burgers
2002-04-18 20:33:10 UTC
Permalink
Post by Harold Hunt
I'm awaiting feedback,
This is the first time I installed/used xfree86 at all. I used setup on
the URL you gave and everything went smoothly (including the
dependencies).

I downloaded and installed just the basic set, added /usr/X11R6/bin
to my path, ran startx (got a lot of warnings from Zonealarm which
makes sense of cause) and started twm after that.

Very good job!

regards

Teun
Christopher Faylor
2002-04-19 02:02:33 UTC
Permalink
Post by Teun Burgers
Post by Harold Hunt
I'm awaiting feedback,
This is the first time I installed/used xfree86 at all. I used setup on
the URL you gave and everything went smoothly (including the
dependencies).
I downloaded and installed just the basic set, added /usr/X11R6/bin
to my path, ran startx (got a lot of warnings from Zonealarm which
makes sense of cause) and started twm after that.
Very good job!
Shall we add this to the cygwin distro or are we still waiting for
some postinstall shell script work?

cgf
Harold Hunt
2002-04-19 05:24:48 UTC
Permalink
Chris,
Post by Christopher Faylor
Shall we add this to the cygwin distro or are we still waiting for
some postinstall shell script work?
These will forever be known as Harold's Famous Last Words:
Sure Chris, why not? Go ahead and add the packages to the distro.

Be aware, I just updated XFree86-xserv to 4.2.0-2, so you'll need to grab
the latest packages off of ftp://huntharo-4.user.msu.edu/pub/cygwin/

That's all for now.

I can't wait to see how many people use Cygwin/XFree86 now!

Oh, we can wait for the postinstall shell script. That will really be just
icing on the cake.

Harold
Christopher Faylor
2002-04-19 16:52:27 UTC
Permalink
Post by Harold Hunt
Chris,
Post by Christopher Faylor
Shall we add this to the cygwin distro or are we still waiting for
some postinstall shell script work?
Sure Chris, why not? Go ahead and add the packages to the distro.
Be aware, I just updated XFree86-xserv to 4.2.0-2, so you'll need to grab
the latest packages off of ftp://huntharo-4.user.msu.edu/pub/cygwin/
That's all for now.
I can't wait to see how many people use Cygwin/XFree86 now!
Ditto. Hope you're ready for this.

cgf
Christopher Faylor
2002-04-19 17:15:04 UTC
Permalink
Post by Christopher Faylor
Post by Harold Hunt
Chris,
Post by Christopher Faylor
Shall we add this to the cygwin distro or are we still waiting for
some postinstall shell script work?
Sure Chris, why not? Go ahead and add the packages to the distro.
Be aware, I just updated XFree86-xserv to 4.2.0-2, so you'll need to grab
the latest packages off of ftp://huntharo-4.user.msu.edu/pub/cygwin/
That's all for now.
I can't wait to see how many people use Cygwin/XFree86 now!
Ditto. Hope you're ready for this.
It's up there. Should be on mirrors shortly.

One thing I just noticed, though (by looking at
http://cygwin.com/packages/), was that the source tar.bz2 files don't
seem to be part of this. There should probably be fewer source tar
balls than binary but they should be part of the distribution, right?
If not, we'll inevitably get questions.

cgf
Harold Hunt
2002-04-19 20:55:57 UTC
Permalink
Chris,
Post by Christopher Faylor
It's up there. Should be on mirrors shortly.
Very cool.
Post by Christopher Faylor
One thing I just noticed, though (by looking at
http://cygwin.com/packages/), was that the source tar.bz2 files don't
seem to be part of this. There should probably be fewer source tar
balls than binary but they should be part of the distribution, right?
If not, we'll inevitably get questions.
I've thought about this enough to make my head spin. The only real solution
I could come up with is to tell folks to go to the XFree86 CVS tree.

The main problem with -src packages for us is that almost nothing will
change after an XFree86 release except for the xc/programs/Xserver/hw/xwin
directory, where I make modifications to the XWin server. So, what do I do
for packaging? Which of the XFree86-* packages do I include source with?
Do I include one huge tarball with everything and another small tarball that
has just the hw/xwin directory so that it can be easily updated? I'm
confused.

I didn't quite gather from the earlier discussions whether we can have a
source package seperate from any binary packages. i.e., could we have
XFree86-full-src without an associated binary package? Or would we have to
make XFree86-base-src the package that contained the full source archive.


In a related question that has to do with my laziness, I need a way to
tarball a CVS tree without including the CVS directories. I'm sure this can
be done with a simple script, but I'm a programmer not a script writer.
Anyone want to point me to an existing script that does this, or write one
for me?


Later,

Harold
Post by Christopher Faylor
-----Original Message-----
Sent: Friday, April 19, 2002 1:15 PM
Subject: Re: [ANNOUNCEMENT] cygwin/xfree86 setup.exe packages available
for comments and testing
Post by Christopher Faylor
Post by Harold Hunt
Chris,
Post by Christopher Faylor
Shall we add this to the cygwin distro or are we still waiting for
some postinstall shell script work?
Sure Chris, why not? Go ahead and add the packages to the distro.
Be aware, I just updated XFree86-xserv to 4.2.0-2, so you'll
need to grab
Post by Christopher Faylor
Post by Harold Hunt
the latest packages off of ftp://huntharo-4.user.msu.edu/pub/cygwin/
That's all for now.
I can't wait to see how many people use Cygwin/XFree86 now!
Ditto. Hope you're ready for this.
It's up there. Should be on mirrors shortly.
One thing I just noticed, though (by looking at
http://cygwin.com/packages/), was that the source tar.bz2 files don't
seem to be part of this. There should probably be fewer source tar
balls than binary but they should be part of the distribution, right?
If not, we'll inevitably get questions.
cgf
Christopher Faylor
2002-04-19 22:47:47 UTC
Permalink
Post by Harold Hunt
The main problem with -src packages for us is that almost nothing will
change after an XFree86 release except for the
xc/programs/Xserver/hw/xwin directory, where I make modifications to
the XWin server. So, what do I do for packaging? Which of the
XFree86-* packages do I include source with? Do I include one huge
tarball with everything and another small tarball that has just the
hw/xwin directory so that it can be easily updated? I'm confused.
I had the same thoughts and hoped you'd have a brilliant solution. :-)
Post by Harold Hunt
I didn't quite gather from the earlier discussions whether we can have
a source package seperate from any binary packages. i.e., could we
have XFree86-full-src without an associated binary package? Or would
we have to make XFree86-base-src the package that contained the full
source archive.
Hmm. Yes. I think this would work. That might be the best solution.

In fact, it may be a nice trend setter.
Post by Harold Hunt
In a related question that has to do with my laziness, I need a way to
tarball a CVS tree without including the CVS directories. I'm sure this can
be done with a simple script, but I'm a programmer not a script writer.
Anyone want to point me to an existing script that does this, or write one
for me?
From my "generate a package" script:

find $package_src/* -print -follow | egrep -v '\.cvsignore|\.bak$|\.orig$|~$|^.#|CVS|%redact|/tags$' | egrep -v "$src_exclude" |
sort | tar -T - --no-recursion -cjf "$tarstem"-src.tar.bz2

cgf
Robert Collins
2002-04-19 22:28:43 UTC
Permalink
Post by Christopher Faylor
-----Original Message-----
Sent: Saturday, April 20, 2002 6:56 AM
In a related question that has to do with my laziness, I need
a way to tarball a CVS tree without including the CVS
directories. I'm sure this can be done with a simple script,
but I'm a programmer not a script writer. Anyone want to
point me to an existing script that does this, or write one for me?
Grab the -src for one of the packages that Chuck or I maintain - say
libxslt. There is a tar command in the .sh that filters out various
directories... I'm sure you can adapt it easily.

Rob
Robert Collins
2002-04-19 23:21:01 UTC
Permalink
Post by Christopher Faylor
-----Original Message-----
Sent: Saturday, April 20, 2002 8:48 AM
Post by Harold Hunt
I didn't quite gather from the earlier discussions whether
we can have
Post by Harold Hunt
a source package seperate from any binary packages. i.e., could we
have XFree86-full-src without an associated binary package?
Or would
Post by Harold Hunt
we have to make XFree86-base-src the package that contained the full
source archive.
Hmm. Yes. I think this would work. That might be the best solution.
In fact, it may be a nice trend setter.
I think setup.exe needs a little work before doing this, but it's a good
direction. (i.e. setup.exe should have a view to only show src packages,
and a view to only show binaries - to avoid confusing folk). (Think
apt-get source vs apt-get install).

Rob
Charles Wilson
2002-04-20 02:59:29 UTC
Permalink
Post by Robert Collins
Post by Christopher Faylor
Post by Harold Hunt
we have to make XFree86-base-src the package that contained the full
source archive.
Hmm. Yes. I think this would work. That might be the best solution.
In fact, it may be a nice trend setter.
I think setup.exe needs a little work before doing this, but it's a good
direction. (i.e. setup.exe should have a view to only show src packages,
and a view to only show binaries - to avoid confusing folk). (Think
apt-get source vs apt-get install).
How about my 'external-src: ' idea?

setup hint for XFree86-[anything but base]-...
external-src: XFree86-base
setup hint for XFree86-base-
<no external-src tag>

and both upset and setup will understand this and "do the right thing":
upset needs to, for those pkgs with an external-src in their setup hint,
find the -src tarball for the indicated package, whose VER-REL string
matches the package-under-consideration, and put THAT into setup.hint,
so (for the fonts "package") you get
install: release/xfree/xfree86-fonts/XFree86-fonts-4.2.0-2.tar.bz2
source: release/xfree/xfree86-base/XFree86-base-4.2.0-2-src.tar.bz2
[prev]
install: release/xfree/xfree86-fonts/XFree86-fonts-4.2.0-1.tar.bz2
source: release/xfree/xfree86-base/XFree86-base-4.2.0-1-src.tar.bz2

Also, setup must do the following (even without new 'views' and whatnot)
1) all XFree86-...- indicate that src is available (that is,
'presence of a -src tarball' == 'no -src tarball but external-src:
marker in setup.hint'
2) clicking on any one (or multiple) of the 'src' checkboxes in setup
will trigger a download (and only one download) of the actual
XFree86-base-4.2.0-1-src.tar.bz2 package


---------
Later, we can get even fancier, and allow the specification of multiple
-src packages...then the monolithic 'XFree86-base-4.2.0-1-src.tar.bz2'
can be split into "the stuff that cygwin-xfree doesn't change" and "the
stuff that changes frequently" (e.g. .../hw/xwin). e.g.

setup hint for XFree86-[anything but base]-...
external-src: XFree86-base
setup hint for XFree86-base-
<no external-src tag>
extra-src: XFree86-base2

in release/xfree/xfree86-base/
XFree86-base-4.2.0-1.tar.bz2
XFree86-base-4.2.0-1-src.tar.bz2
XFree86-base2-4.2.0-1-src.tar.bz2

But that (or something like it) can be later....
---------

--Chuck

P.S. Chris, where'd upset go? the current version used to be in
htdocs, but it's gone now. AND, the old version which lived in
cinstall/temp, is still there -- and you said you were going to remove it.

Did you remove the wrong one?
Christopher Faylor
2002-04-20 03:12:38 UTC
Permalink
Post by Charles Wilson
P.S. Chris, where'd upset go? the current version used to be in
htdocs, but it's gone now. AND, the old version which lived in
cinstall/temp, is still there -- and you said you were going to remove it.
http://www.cygwin.com/ml/cygwin-apps/2002-02/msg00028.html

cinstall/temp is an empty directory.
Post by Charles Wilson
Did you remove the wrong one?
Nope.

upset2 is gone now, though. It is now 'upset'.

cgf
Robert Collins
2002-04-20 03:00:11 UTC
Permalink
Post by Christopher Faylor
-----Original Message-----
Sent: Saturday, April 20, 2002 12:59 PM
Also, setup must do the following (even without new 'views'
and whatnot)
Setup should already do that, why not make a test setup.ini and see what
happens :]. It's all data driven and there is no requirement for -src
packages to follow the same name as the base.

Rob
Charles Wilson
2002-04-20 22:33:25 UTC
Permalink
Post by Robert Collins
Post by Christopher Faylor
-----Original Message-----
Sent: Saturday, April 20, 2002 12:59 PM
Also, setup must do the following (even without new 'views'
and whatnot)
Setup should already do that, why not make a test setup.ini and see what
happens :]. It's all data driven and there is no requirement for -src
packages to follow the same name as the base.
Whaddaya know. It works. point setup.exe here:

http://www.neuro.gatech.edu/users/cwilson/cygutils/testing/

There are 3 packages, bob, bobx, and boby. only bob has a -src package,
the other two have source: lines that explicitly specify bob's source
package.

It seems to work perfectly -- with only a single niggle:

if you select the source for more than one of [bob|bobx|boby], then it
is downloaded only once (good) but is unpacked three times. This isn't
a terrible thing, but it is a waste of effort....

If you play around with this, you can clean up by uninstalling the
"binary" packages, and deleting the file /usr/src/bob.file.src. (Or,
you can delete /bob.file, /bobx.file, /boby.file, and
/usr/src/bob.file.src, and remove the bob, bobx, and boby entries from
/etc/setup/installed.db)

So, except for the niggle above, if upset were modified to allow the
external-src: keyword, then multiple-binary-packages from one -src
package would work! (and the niggle isn't a show stopper).

--Chuck
Robert Collins
2002-04-21 06:47:09 UTC
Permalink
Post by Christopher Faylor
-----Original Message-----
Sent: Sunday, April 21, 2002 8:33 AM
if you select the source for more than one of [bob|bobx|boby], then it
is downloaded only once (good) but is unpacked three times. This isn't
a terrible thing, but it is a waste of effort....
This won't change anytime soon. Long term we'll have the concept of a
source package - as opposed to a src attribute of an existing package.
This will require setup.ini changes to represent properly, so I want all
the kinks out first...

Rob
Charles Wilson
2002-04-21 07:08:32 UTC
Permalink
Post by Robert Collins
Post by Christopher Faylor
-----Original Message-----
Sent: Sunday, April 21, 2002 8:33 AM
if you select the source for more than one of [bob|bobx|boby], then it
is downloaded only once (good) but is unpacked three times. This isn't
a terrible thing, but it is a waste of effort....
This won't change anytime soon. Long term we'll have the concept of a
source package - as opposed to a src attribute of an existing package.
This will require setup.ini changes to represent properly, so I want all
the kinks out first...
Like I said, NOT a showstopper. you ONLY see this behavior if you click
the src checkbox for multiple packages that all share the same source.
It's only downloaded once. When setup is done, you have the source.
Behind the scenes, that source package gets installed multiple times.
Big deal.

IMO, if upset gets the ability to do the right thing with an
'external-src:' directive in setup.hint, then everything necessary for
multiple-bin/single-src packages would be in place.

--Chuck


--Chuck

Loading...