[Fink-devel] Depends Question

2003-11-09 Thread Daniel Macks
Are implicit/sub-depends relationships valid, or do they need to be
noted explicitly? Let's say there is a package B-shlibs that is marked
"Depends: C-shlibs", and otool -L for files in package A shows linking
against files in both B-shlibs and C-shlibs. Does A have to list
Depends for both B-shlibs and C-shlibs, or is it sufficient to list
B-shlibs?

dan

-- 
Daniel Macks
[EMAIL PROTECTED]
http://www.netspace.org/~dmacks



---
This SF.Net email sponsored by: ApacheCon 2003,
16-19 November in Las Vegas. Learn firsthand the latest
developments in Apache, PHP, Perl, XML, Java, MySQL,
WebDAV, and more! http://www.apachecon.com/
___
Fink-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/fink-devel


Re: [Fink-devel] Begining of a fink "roadmap", this is just an overview draft

2003-11-09 Thread Michael G Schwern
On Sun, Nov 09, 2003 at 08:02:47PM +0100, Max Horn wrote:
> Just to clarify this: I think I have a pretty good grasp of testing. I 
> have done test driven development a lot myself in the past. I even made 
> other people use tests :-).
> I wouldn't start with the things I explained in my mails (in case you 
> thought that was what I proposed). I simply replied to your statements, 
> trying to explain the situation, and thus trying to increase your 
> understanding of how the fink build system and installation works. 
> Sorry if that failed due to miscommunication :-/

Good, then we agree we're totally confused and punching at air.  Excellent.

*sweeps all this complexity under a rug*

Now back to just worrying about testing the modules. :)


-- 
Michael G Schwern[EMAIL PROTECTED]  http://www.pobox.com/~schwern/
Let me check my notes.
http://www.sluggy.com


---
This SF.Net email sponsored by: ApacheCon 2003,
16-19 November in Las Vegas. Learn firsthand the latest
developments in Apache, PHP, Perl, XML, Java, MySQL,
WebDAV, and more! http://www.apachecon.com/
___
Fink-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/fink-devel


Re: [Fink-devel] Script to change emails

2003-11-09 Thread Rohan Lloyd
On 8 Nov 2003, at 6:04 PM, Jeremy Higgs wrote:

Hi everyone!

Does anyone have a script that would allow me to change the email 
listed in each of the .info files for packages I maintain? I've done a 
little bit of simple shell scripting, so I was going to do it that way 
using a whole lot of for loops, but I'm not sure how to do it 
completely. If anyone has a script already (I remember some developers 
changing emails before) that I could look at, that would be great!
You can do it in emacs using tags-query-replace

First create a TAGS file for all info files

  cd /sw/fink
  find . -name "*.info" | xargs etags
Fire up emacs, and go:

  M-x tags-query-replace

enter the string you want to replace, and what you want to change it 
to, and go. It will open up each file in which a match is found. You 
can then either accept/reject individual changes, or type '!' to change 
all occurrences in that file.

Voila!

--
Rohan Lloyd


---
This SF.Net email sponsored by: ApacheCon 2003,
16-19 November in Las Vegas. Learn firsthand the latest
developments in Apache, PHP, Perl, XML, Java, MySQL,
WebDAV, and more! http://www.apachecon.com/
___
Fink-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/fink-devel


Re: [Fink-devel] RoadMap, second attempt and I expect a bit more feedback this time (pretty please)

2003-11-09 Thread Darian Lanx
-BEGIN PGP SIGNED MESSAGE-
Hash: RIPEMD160
Max Horn wrote:


You mean like the package manager TODO list which we already have? Maybe 
you should start with that? fink/TODO.
yes, I do. I just would like to put it into a more public place. yes I 
know everyone can download it from CVS, but with a public place I mean a 
prominent place, such as the web-site clearly linked from somewhere in 
very big letters.



Automatic GPG stuff sounds like snake oil to me. And non-automatic GPG 
sounds like a lot of work to me. That said, added security would be 
nice, but only if it's both convenient to use for developers and users.

I can only agree. But as GPG is not exactly a trivial system, it will 
always require some interaction with the user or developer. I know that 
there are not only problems how to integrate this on a code level, but 
also trust issues. Who signs the packages? Are those indiv iduals or is 
there a fink core key that only specific people have and they sign the 
packages? who makes sure that the package is "fine" when they do. And if 
every developer may sign their package, who says I can trust them? I 
know it is complicated, but I also think that md5sums are nice, but they 
really do not do much for security now a days, imho.



Timestamp handling of Rsync Server
Importance: Very High
This is a blocker item. I cannot really go out there and acquire more 
Master mirrors or children until this system has been put in place. In 
short it means that fink checks which TIMESTAMP it received from the 
picked mirror it updated last from. If the TIMESTAMP for the mirror it 
contacted for the next update is older than the locally stored one, 
that mirror is skipped.
How: Hack support for that into Selfupdate.pm.
Uhm, why not code it cleanly? :-)

From webster:

to hack:
3 a : to manage successfully
4 a : to write computer programs for enjoyment
I did not mean to imply that "hack" means: do not do it cleanly *grin*

Add it to the stuff we already have in our TODO. Hope that somebody gets 
around to do any of those. Dunno what else to say.
Well, that is exactly what I do not wish to do. Wait that someone gets 
around to doing it, or someone feels like doing it because they happened 
to stumble across the TODO and they did not have anything better todo. I 
know that this is something that works very well and I guess lots of 
fink worked out to be coded that way. I just want to help by pushing 
this a bit forward. Thus exposing our needs to the public in a better 
way and explaining how they may interface with us might attract more 
coders. I am not sure if that is the right approach, so do flame me or 
guide me and please do nto think I wish to change the way things have 
worked so far. I just think there is room for improvement. But yes, you 
are right, the first step is, to add it to the TODO

and on that account.. good night ;)

- -d



Max

-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.3 (Darwin)
iD8DBQE/rskdiW/Ta/pxHPQRAw3qAJ9hmXzJGATTPDoL6kNV+q3IjiA4OQCeJdbu
RQav2r31SbuqNrz9atsbFR4=
=nXUQ
-END PGP SIGNATURE-


---
This SF.Net email sponsored by: ApacheCon 2003,
16-19 November in Las Vegas. Learn firsthand the latest
developments in Apache, PHP, Perl, XML, Java, MySQL,
WebDAV, and more! http://www.apachecon.com/
___
Fink-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/fink-devel


Re: [Fink-devel] RoadMap, second attempt and I expect a bit more feedback this time (pretty please)

2003-11-09 Thread Steffen Prohaska
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
QUICK SUMMARY: Migration path to GPG signed info files. Starting right 
now is possible.

On Sunday, November 9, 2003, at 08:07  PM, Max Horn wrote:
GPG handling for info signing
Importance: Medium
How: There are Modules that can do OpenGPG in pure perl, but those 
have a lot of dependencies. This would mean that we should make gpg 
essential and maybe a Perl module that interfaces with it.
Automatic GPG stuff sounds like snake oil to me. And non-automatic GPG 
sounds like a lot of work to me. That said, added security would be 
nice, but only if it's both convenient to use for developers and > users.

I think a good first step would be to add md5 sums for every used file 
and allow a PGP signature of each package .info file, similar to debian 
.dsc files (see below for an example). This would require a new field 
with a md5 sum of the patch file. The signature might be optional for a 
transitional period.

This could be done with nearly no work. All the standard tools can be 
easily changed to ignore the PGP signatures. It should be simple to 
change the parsers. Nontheless this is a significant security increase. 
A check of this signature together with the md5 sums of the source and 
the patches ensures that nobody other than the package maintainer 
changed something. I don't know if it's really necessary to run this 
security checks on every user machine. But it could be used by more 
advanced scripts to check the CVS and the mirrors. Time will show how 
it can be incorporated into the user's tools.

There might be cases like the compromised GNU server 
(http://www.cert.org/advisories/CA-2003-21.html), where it would be of 
incredible help if a script could check all the package sources.

Going this way wouldn't require GPG support on every user machine. The 
developers could first learn about the details and figure out what the 
best migration path for all packeges could be. The minor changes in the 
parser shouldn't introduce complications and signed and unsigned 
packages could live side by side without problems.

/Steffen

Example of a debian package description:
- -BEGIN PGP SIGNED MESSAGE-
Format: 1.0
Source: apt
Version: 0.5.4
Binary: apt-utils, libapt-pkg-doc, libapt-pkg-dev, apt
Maintainer: APT Development Team <[EMAIL PROTECTED]>
Architecture: any
Standards-Version: 3.1.1
Build-Depends: debhelper, debiandoc-sgml, libdb2-dev
Files:
 274fb64e2e67318b4c9c94599785c37d 528995 apt_0.5.4.tar.gz
- -BEGIN PGP SIGNATURE-
Version: GnuPG v1.0.3 (GNU/Linux)
Comment: For info see http://www.gnupg.org
iQCVAwUBO4BEDtxNMr81Jh4hAQFB2QP+MhZOsAUVu1CTL8LOZCHQgvICFimoRWBl
WQCvzVhcoBBpv6r7Xiwkoqjz7y463utRZ6QUI3uJysICmgbIDhNFswouniJSWqiV
bcn4fgHd8AcsRvDUWyrfQXpDJjrD4JaoQhWsU3qmC+3KA4finNj3IGToij+lO09J
+adpFef2Gpk=
=vedl
- -END PGP SIGNATURE-
- --
PGP Public Key: http://www.zib.de/prohaska/prohaska.pgp
Key id: 0xDA749299
Key fingerprint: 8B59 83A8 A43D E0E2 DEDB  D479 3157 2FEA DA74 9299
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.2 (Darwin)
iD8DBQE/rp7UMVcv6tp0kpkRAqxLAJ4w56tMJPJvVmH74yylnzWlEQGGgACbBED8
NQfutgn5a+rSoUNsg079JJo=
=db4q
-END PGP SIGNATURE-


---
This SF.Net email sponsored by: ApacheCon 2003,
16-19 November in Las Vegas. Learn firsthand the latest
developments in Apache, PHP, Perl, XML, Java, MySQL,
WebDAV, and more! http://www.apachecon.com/
___
Fink-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/fink-devel


[Fink-devel] root-kde-icons-noia can't compile.

2003-11-09 Thread Pascal Bourguignon
While doing fink update-all, I found the following compilation error.
Just a little question: while I have gcc_select 3.3, why is  
/usr/include/gcc/darwin/3.1/g++-v3/cmath included by g++3?

dpkg-deb -b root-kde-icons-noia-0.95-3  
/sw/fink/dists/stable/main/binary-darwin-powerpc/kde
dpkg-deb: building package `kde-icons-noia' in  
`/sw/fink/dists/stable/main/binary-darwin-powerpc/kde/kde-icons- 
noia_0.95-3_darwin-powerpc.deb'.
ln -sf  
/sw/fink/dists/stable/main/binary-darwin-powerpc/kde/kde-icons- 
noia_0.95-3_darwin-powerpc.deb /sw/fink/debs/
rm -rf /sw/src/root-kde-icons-noia-0.95-3
dpkg -i  
/sw/fink/dists/stable/main/binary-darwin-powerpc/kde/kde-icons- 
noia_0.95-3_darwin-powerpc.deb
(Reading database ... 197665 files and directories currently installed.)
Preparing to replace kde-icons-noia 0.95-2 (using  
.../kde-icons-noia_0.95-3_darwin-powerpc.deb) ...
Unpacking replacement kde-icons-noia ...
Setting up kde-icons-noia (0.95-3) ...
mkdir -p /sw/src/kseg-0.3.5-12
gzip -dc /sw/src/kseg-0.35.tar.gz | /sw/bin/tar -xf -
sed 's|@PREFIX@|/sw|g' <  
/sw/fink/dists/stable/main/finkinfo/sci/kseg.patch | patch -p1
patching file Makefile
patching file formula/Makefile
patching file main.cpp
make
cd formula && make
g++3 -c -O2 -fno-rtti -fno-exceptions -fomit-frame-pointer -ffast-math  
-I/sw/include/qt box.cpp
g++3 -c -O2 -fno-rtti -fno-exceptions -fomit-frame-pointer -ffast-math  
-I/sw/include/qt kformula.cpp
/sw/bin/moc kformulaedit.H -o kformulaedit.moc
g++3 -c -O2 -fno-rtti -fno-exceptions -fomit-frame-pointer -ffast-math  
-I/sw/include/qt kformulaedit.cpp
g++3 -c -O2 -fno-rtti -fno-exceptions -fomit-frame-pointer -ffast-math  
-I/sw/include/qt matrixbox.cpp
/sw/bin/moc MatrixDialog.H -o MatrixDialog.moc
g++3 -c -O2 -fno-rtti -fno-exceptions -fomit-frame-pointer -ffast-math  
-I/sw/include/qt MatrixDialog.cpp
g++3 -c -O2 -fno-rtti -fno-exceptions -fomit-frame-pointer -ffast-math  
-I/sw/include/qt G_point.cpp
g++3 -c -O2 -fno-rtti -fno-exceptions -fomit-frame-pointer -ffast-math  
-I/sw/include/qt G_line.cpp
g++3 -c -O2 -fno-rtti -fno-exceptions -fomit-frame-pointer -ffast-math  
-I/sw/include/qt G_segment.cpp
g++3 -c -O2 -fno-rtti -fno-exceptions -fomit-frame-pointer -ffast-math  
-I/sw/include/qt G_ray.cpp
g++3 -c -O2 -fno-rtti -fno-exceptions -fomit-frame-pointer -ffast-math  
-I/sw/include/qt G_circle.cpp
g++3 -c -O2 -fno-rtti -fno-exceptions -fomit-frame-pointer -ffast-math  
-I/sw/include/qt G_arc.cpp
g++3 -c -O2 -fno-rtti -fno-exceptions -fomit-frame-pointer -ffast-math  
-I/sw/include/qt G_locus.cpp
g++3 -c -O2 -fno-rtti -fno-exceptions -fomit-frame-pointer -ffast-math  
-I/sw/include/qt G_arcSector.cpp
g++3 -c -O2 -fno-rtti -fno-exceptions -fomit-frame-pointer -ffast-math  
-I/sw/include/qt G_arcSegment.cpp
g++3 -c -O2 -fno-rtti -fno-exceptions -fomit-frame-pointer -ffast-math  
-I/sw/include/qt G_polygon.cpp
g++3 -c -O2 -fno-rtti -fno-exceptions -fomit-frame-pointer -ffast-math  
-I/sw/include/qt G_circleInterior.cpp
g++3 -c -O2 -fno-rtti -fno-exceptions -fomit-frame-pointer -ffast-math  
-I/sw/include/qt G_object.cpp
g++3 -c -O2 -fno-rtti -fno-exceptions -fomit-frame-pointer -ffast-math  
-I/sw/include/qt G_pointObject.cpp
g++3 -c -O2 -fno-rtti -fno-exceptions -fomit-frame-pointer -ffast-math  
-I/sw/include/qt G_lineObject.cpp
g++3 -c -O2 -fno-rtti -fno-exceptions -fomit-frame-pointer -ffast-math  
-I/sw/include/qt G_segmentObject.cpp
g++3 -c -O2 -fno-rtti -fno-exceptions -fomit-frame-pointer -ffast-math  
-I/sw/include/qt G_rayObject.cpp
g++3 -c -O2 -fno-rtti -fno-exceptions -fomit-frame-pointer -ffast-math  
-I/sw/include/qt G_circleObject.cpp
g++3 -c -O2 -fno-rtti -fno-exceptions -fomit-frame-pointer -ffast-math  
-I/sw/include/qt G_arcObject.cpp
g++3 -c -O2 -fno-rtti -fno-exceptions -fomit-frame-pointer -ffast-math  
-I/sw/include/qt G_locusObject.cpp
g++3 -c -O2 -fno-rtti -fno-exceptions -fomit-frame-pointer -ffast-math  
-I/sw/include/qt G_pointLocus.cpp
G_pointLocus.cpp: In member function `virtual void
   G_locusObject::generatePointLocus()':
G_pointLocus.cpp:286: call of overloaded `log(int&)' is ambiguous
/usr/include/architecture/ppc/math.h:217: candidates are: double  
log(double)
/usr/include/gcc/darwin/3.1/g++-v3/cmath:344: long  
double
   std::log(long double)
/usr/include/gcc/darwin/3.1/g++-v3/cmath:336: float
   std::log(float)
make: *** [G_pointLocus.o] Error 1
### execution of make failed, exit code 2
Failed: compiling kseg-0.3.5-12 failed
bash-2.05a# gcc_select
Current default compiler:
gcc version 3.3 20030304 (Apple Computer, Inc. build 1493)
bash-2.05a# which g++3
/sw/bin/g++3



--
__Pascal Bourguignon__
http://www.informatimago.com/


---
This SF.Net email sponsored by: ApacheCon 2003,
16-19 November in Las Vegas. Learn firsthand the latest
developments in Apache, PHP, Perl, XML, Java, MySQL,
WebDAV, and more! http://www.apachecon.com/
__

Re: [Fink-devel] using *-shlibs? *-dev? When? Where?

2003-11-09 Thread Max Horn
Am Sonntag, 09.11.03 um 16:02 Uhr schrieb Charles Lepple:

On Sunday, November 9, 2003, at 07:43 AM, Max Horn wrote:

Am Sonntag, 09.11.03 um 03:30 Uhr schrieb Stefan Langerman:

I am still trying to figure out the whole -shlibs business.

I suggest reading 
http://fink.sourceforge.net/doc/packaging/policy.php#sharedlibs
Max: Is there any way we could persuade you (or anyone else who has 
time, and write access) to include an example, such as your 
explanation of curl, in the sharedlibs section of the Policy page?
You will have no success persuading me (I just spent 5 hours correcting 
homework; I feel like coding, or going to a party, but not like writing 
docs, sorry :-). Usually a good approach, though, is this: You, the 
person needing the documentation, write it (e.g. integrate my example), 
then let me/other fink core folks review it, and we can put it online.

Mind you, I don't ask that you write the whole docs, but e.g. if you 
understood my example, then you could grab the text of the docs, and 
integrate my example at a place you feel it fits, and then submit the 
updated text back to us.


For someone who is just getting started with the process of creating 
an info file, it is invaluable to have one straightforward example to 
work from. (I clearly remember this when I started packaging gEDA.) 
Your explanation of how curl works is invaluable for a new developer, 
because as Stefan pointed out, sometimes it's not obvious which info 
file should be used as an example.
Agreed.

And while it's good that the Policy manual details both naming 
conventions, it's a little too much info for someone who "just wants 
to make it work" the first time.

Yup.

Max



---
This SF.Net email sponsored by: ApacheCon 2003,
16-19 November in Las Vegas. Learn firsthand the latest
developments in Apache, PHP, Perl, XML, Java, MySQL,
WebDAV, and more! http://www.apachecon.com/
___
Fink-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/fink-devel


Re: [Fink-devel] RoadMap, second attempt and I expect a bit more feedback this time (pretty please)

2003-11-09 Thread Max Horn
Am Sonntag, 09.11.03 um 19:44 Uhr schrieb Darian Lanx:

-BEGIN PGP SIGNED MESSAGE-
Hash: RIPEMD160
Hello ;)

First of all, thank you Max and Michael for getting back to me.

I realise that we cannot have fixed release cycles. We have talked 
about that on IRC and I see that there is no way to properly 
coordinate that. Yet I would appreciate it, if we could somewhat agree 
on a prioritised TODO list that is global.
You mean like the package manager TODO list which we already have? 
Maybe you should start with that? fink/TODO.

 This means that someone who is interested in helping us with fink ( 
the package manager) can have a quick overview.
What is needed
Why is it needed
How badly is it needed and of course suggestions how it could be done.

Here is my first attempt at it. Please understand that these are my 
priorities and you have all the right in the world to put yours in as 
well.

GPG handling for info signing
Importance: Medium
How: There are Modules that can do OpenGPG in pure perl, but those 
have a lot of dependencies. This would mean that we should make gpg 
essential and maybe a Perl module that interfaces with it.
Automatic GPG stuff sounds like snake oil to me. And non-automatic GPG 
sounds like a lot of work to me. That said, added security would be 
nice, but only if it's both convenient to use for developers and users.



Move the package Index to a BerkDB
Importance: Medium
How: Store the relevant infos from the Info file in a BerkelyDB so 
that index searches are faster. This is especially interesting should 
we really expand past the 3000 package border by a significant number. 
how exactly, I have no idea.
To me, importance is low.



Timestamp handling of Rsync Server
Importance: Very High
This is a blocker item. I cannot really go out there and acquire more 
Master mirrors or children until this system has been put in place. In 
short it means that fink checks which TIMESTAMP it received from the 
picked mirror it updated last from. If the TIMESTAMP for the mirror it 
contacted for the next update is older than the locally stored one, 
that mirror is skipped.
How: Hack support for that into Selfupdate.pm.
Uhm, why not code it cleanly? :-)

[...]

Your thoughts?

Add it to the stuff we already have in our TODO. Hope that somebody 
gets around to do any of those. Dunno what else to say.

Max



---
This SF.Net email sponsored by: ApacheCon 2003,
16-19 November in Las Vegas. Learn firsthand the latest
developments in Apache, PHP, Perl, XML, Java, MySQL,
WebDAV, and more! http://www.apachecon.com/
___
Fink-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/fink-devel


Re: [Fink-devel] Begining of a fink "roadmap", this is just an overview draft

2003-11-09 Thread Max Horn
Am Sonntag, 09.11.03 um 15:31 Uhr schrieb Michael G Schwern:

On Sun, Nov 09, 2003 at 01:32:10PM +0100, Max Horn wrote:
Sorry to have not been clear, I intend to build up a dummy fink
installation for testing purposes.

Of course this way you can only test a small fraction of Fink. E.g. 
the
whole bootstrap isn't covered by this (which includes compiling stuff
like dpkg and apt). Also, you can't test building & installing 
packages
this way (i.e. without source modifications to fink), because fink
needs root & dpkg for this, something which requires a) interactivity,
and b) dpkg/apt/etc. in the Fink installation, which wouldn't be 
there.
The latter problem maybe can be worked around by symlinks from
/sw/bin/dpkg to /my/fake/sw/bin/dpkg etc. Dunno if that would work.
That's ok.  The tests that need dpkg can be optionally dependent on 
it.  If
the user has the dpkg and apt packages already installed they'll be 
used.
We're just testing fink, not dpkg.  You've got to draw the line 
somewhere.

There's no problem for the tests to rely on fink packages being already
installed.  The only thing you don't want is it to alter /sw.
Note quite. Because the dpkg installed in /sw has its status/config 
files in /sw. Getting it to work and live in our fake /sw is not that 
trivial. It might be possible to achieve that with a chroot box, though.



 I've done this sort of thing before (look at ExtUtils::MakeMaker).
That's, IMHO, comparing Apples and Bananas. Sure, I have done stuff
like this before, too . But installing ExtUtils::MakeMaker is, in my
estimation (please correct me if I am wrong) much less complex than
install Fink and fink.
fink's about half the size.  Only has one platform to deal with.  
They're
both large sets of crufty code.  They're both package build systems.
They both build themselves.
I don't argue that ExtUtils::MakeMaker is complex - I was specifically 
referring to *installing* it. :-). The "fink" tool is only a part of 
"Fink". As such it relies on several other components (dpkg, tar, apt, 
ncurses, ...) which have to be installed along with it. That takes 
time, and makes "faking" the environment harder.

After that, it's very well possible ExtUtils::MakeMaker is as complex 
or even more complex, but that's not relevant :-)

MakeMaker contains several dummy Perl modules for testing.  It goes 
through
the process of running the Makefile.PL and make and checking that all 
the
output is correct and the module gets built and installed into a temp
location.  In addition it tests the methods individually as best it 
can.

Its all basically the same technique except for this bootstrap bit 
which
I wouldn't worry about how we're going to test it just yet.
I am not worried about testing the bootstrap. The thing is, what I 
still don't quite see is how to do testing *without* a fully 
bootstrapped test environment. I.e. how to fake one in a useful manner.

[...]
You've only just got the first 1% tested and already you're worrying 
about
the last 1%.  Relax.  Have some dip.
Actually, I would be quite content already if we just had tests for all 
the modules. But going beyond module testing for me seems more like the 
"second 50%" and not the "last 1%"...

[...]
Not that this is a good example, because it's trivial to restore the
fink database ;-)
And the broken "fink purge" that just accidentally deleted every 
package? :)
Interesting, I didn't even know we have a "fink purge" ? Somebody must 
have sneaked it in :-)

Anyway, sounds like yet another misunderstanding, a problem of 
terminology: what do *you* call the "fink database"? For *me* it is the 
Storable drive "database" containing all the package descriptions, 
which is in turn derived from the .info files and thus trivial to 
restore.

[...]

Let's shelve this.  There's a whole lot more basic testing ground to be
covered before we get to this point at which point I'll hopefully have 
a
better gesalt for fink and you for testing.
Just to clarify this: I think I have a pretty good grasp of testing. I 
have done test driven development a lot myself in the past. I even made 
other people use tests :-).
I wouldn't start with the things I explained in my mails (in case you 
thought that was what I proposed). I simply replied to your statements, 
trying to explain the situation, and thus trying to increase your 
understanding of how the fink build system and installation works. 
Sorry if that failed due to miscommunication :-/

Cheers,

Max



---
This SF.Net email sponsored by: ApacheCon 2003,
16-19 November in Las Vegas. Learn firsthand the latest
developments in Apache, PHP, Perl, XML, Java, MySQL,
WebDAV, and more! http://www.apachecon.com/
___
Fink-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/fink-devel


[Fink-devel] RoadMap, second attempt and I expect a bit more feedback this time (pretty please)

2003-11-09 Thread Darian Lanx
-BEGIN PGP SIGNED MESSAGE-
Hash: RIPEMD160
Hello ;)

First of all, thank you Max and Michael for getting back to me.

I realise that we cannot have fixed release cycles. We have talked about 
that on IRC and I see that there is no way to properly coordinate that. 
Yet I would appreciate it, if we could somewhat agree on a prioritised 
TODO list that is global. This means that someone who is interested in 
helping us with fink ( the package manager) can have a quick overview.
What is needed
Why is it needed
How badly is it needed and of course suggestions how it could be done.

Here is my first attempt at it. Please understand that these are my 
priorities and you have all the right in the world to put yours in as well.

GPG handling for info signing
Importance: Medium
How: There are Modules that can do OpenGPG in pure perl, but those have 
a lot of dependencies. This would mean that we should make gpg essential 
and maybe a Perl module that interfaces with it.

Move the package Index to a BerkDB
Importance: Medium
How: Store the relevant infos from the Info file in a BerkelyDB so that 
index searches are faster. This is especially interesting should we 
really expand past the 3000 package border by a significant number. how 
exactly, I have no idea.

Timestamp handling of Rsync Server
Importance: Very High
This is a blocker item. I cannot really go out there and acquire more 
Master mirrors or children until this system has been put in place. In 
short it means that fink checks which TIMESTAMP it received from the 
picked mirror it updated last from. If the TIMESTAMP for the mirror it 
contacted for the next update is older than the locally stored one, that 
mirror is skipped.
How: Hack support for that into Selfupdate.pm.

Add uidgui branch, automatic adding and removing or users/groups, phase 
out passwd file.
Priority: High
I have a few packages I would port, especially INN but I an not willing 
to deal with the passwd package.
How: Properly test the branches then merge them to HEAD

Add shlibs branch, automatic lib depends in deb files, use ${SHILB_LIBS} 
in the dep line and only hardcoding special cases or non libs.
Priority: Medium
I have no idea how this affects packaging, so I took the priority stated 
by Max.

Implement BuildDependsOnly right now it seems to be a switch that does 
nothing?
Priority: Low to Medium (yes, right now it's just a dummy field)
Same as above for this point.

Dependency engine
Priority: Medium to High
Probably a complete rewrite? This is definetly a long term goal?!
As you can see there is not much that has been added. maybe you could 
help me put this list into an order? Sorted by what is most important 
and should be done first? Personally I need that mirror stuff in as 
quickly as possible. Yes I know, people are busy, thus ia m patient and 
simply asking, but it is a perfect example of what _I_ would put on top

Your thoughts?

Thanks

- -d

-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.3 (Darwin)
iD8DBQE/ror+iW/Ta/pxHPQRA3s/AJ9wL102HJpBlTnhBV1JshkUx0+xFwCdGQmT
cyJVIEXXsoYov+U5NWVFtqc=
=m+Bu
-END PGP SIGNATURE-


---
This SF.Net email sponsored by: ApacheCon 2003,
16-19 November in Las Vegas. Learn firsthand the latest
developments in Apache, PHP, Perl, XML, Java, MySQL,
WebDAV, and more! http://www.apachecon.com/
___
Fink-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/fink-devel


[Fink-devel] So you want to know how up to date the mirror is you are using?

2003-11-09 Thread Darian Lanx
-BEGIN PGP SIGNED MESSAGE-
Hash: RIPEMD160
Hello folks.

I am completely aware, that the new mirror handling for rsync is not yet 
perfect. Yet I had some time and since I need to learn Perl a bit better 
I have taken the chance and created a tiny script. It checks the now 
supplied timestamps of the mirrors against the Master. it calculates the 
offset and shows when the mirror last updated.

You can have a look here:
http://finkmirrors.net/status.html
I know it is not perfect yet and some values are still odd (like the 
last update on rjeka which the mirror maintainer was notified off, as 
well as atl which does not supplied a last updated timestamp yet)

Thanks guys, see ya later

- -d
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.3 (Darwin)
iD8DBQE/rof6iW/Ta/pxHPQRA5rGAJ0Xpg2J84vVCZFvafAhl1DW+CmylACgj8I2
7+AARxYqSMhklr6ocE6F6vo=
=bk9h
-END PGP SIGNATURE-


---
This SF.Net email sponsored by: ApacheCon 2003,
16-19 November in Las Vegas. Learn firsthand the latest
developments in Apache, PHP, Perl, XML, Java, MySQL,
WebDAV, and more! http://www.apachecon.com/
___
Fink-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/fink-devel


Re: [Fink-devel] using *-shlibs? *-dev? When? Where?

2003-11-09 Thread Charles Lepple
On Sunday, November 9, 2003, at 07:43 AM, Max Horn wrote:

Am Sonntag, 09.11.03 um 03:30 Uhr schrieb Stefan Langerman:

I am still trying to figure out the whole -shlibs business.

I suggest reading 
http://fink.sourceforge.net/doc/packaging/policy.php#sharedlibs
Max: Is there any way we could persuade you (or anyone else who has 
time, and write access) to include an example, such as your explanation 
of curl, in the sharedlibs section of the Policy page?

For someone who is just getting started with the process of creating an 
info file, it is invaluable to have one straightforward example to work 
from. (I clearly remember this when I started packaging gEDA.) Your 
explanation of how curl works is invaluable for a new developer, 
because as Stefan pointed out, sometimes it's not obvious which info 
file should be used as an example. And while it's good that the Policy 
manual details both naming conventions, it's a little too much info for 
someone who "just wants to make it work" the first time.

thanks,

--
Charles Lepple
[EMAIL PROTECTED]


---
This SF.Net email sponsored by: ApacheCon 2003,
16-19 November in Las Vegas. Learn firsthand the latest
developments in Apache, PHP, Perl, XML, Java, MySQL,
WebDAV, and more! http://www.apachecon.com/
___
Fink-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/fink-devel


RE: [Fink-devel] using *-shlibs? *-dev? When? Where?

2003-11-09 Thread Alexander K. Hansen
A lot of this is covered in the Packaging Manual:

http://fink.sourceforge.net/doc/packaging/index.php

--
Alexander K. Hansen
Levitated Dipole Experiment
http://www.psfc.mit.edu/LDX
  


-Original Message-
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Stefan
Langerman
Sent: Saturday, November 08, 2003 9:31 PM
To: [EMAIL PROTECTED]
Subject: [Fink-devel] using *-shlibs? *-dev? When? Where?

I am still trying to figure out the whole -shlibs business.

Just looking at a library package like glib2. It has 2 splitoffs
which are glib2-shlibs and glib2-dev. If I understand the conventions
correctly, I should only "Depend: glib2-shlibs", and then I guess
"BuildDepend: glib2-dev". Ok, but then who depends on glib2 itself?
why should it ever be installed ?

Grepping around for glib2, I see that There are BuildDepends used
both for glib2 and glib2-dev. There are also Depends on glib2
and glib2-shlibs.

Are some of these packages wrong? Or is there something I don't get?

-- Stefan.




---
This SF.Net email sponsored by: ApacheCon 2003,
16-19 November in Las Vegas. Learn firsthand the latest
developments in Apache, PHP, Perl, XML, Java, MySQL,
WebDAV, and more! http://www.apachecon.com/
___
Fink-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/fink-devel



---
This SF.Net email sponsored by: ApacheCon 2003,
16-19 November in Las Vegas. Learn firsthand the latest
developments in Apache, PHP, Perl, XML, Java, MySQL,
WebDAV, and more! http://www.apachecon.com/
___
Fink-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/fink-devel


Re: [Fink-devel] Begining of a fink "roadmap", this is just an overview draft

2003-11-09 Thread Michael G Schwern
On Sun, Nov 09, 2003 at 01:32:10PM +0100, Max Horn wrote:
> >Sorry to have not been clear, I intend to build up a dummy fink 
> >installation for testing purposes.
 
> Of course this way you can only test a small fraction of Fink. E.g. the 
> whole bootstrap isn't covered by this (which includes compiling stuff 
> like dpkg and apt). Also, you can't test building & installing packages 
> this way (i.e. without source modifications to fink), because fink 
> needs root & dpkg for this, something which requires a) interactivity, 
> and b) dpkg/apt/etc. in the Fink installation, which wouldn't be there. 
> The latter problem maybe can be worked around by symlinks from 
> /sw/bin/dpkg to /my/fake/sw/bin/dpkg etc. Dunno if that would work.

That's ok.  The tests that need dpkg can be optionally dependent on it.  If
the user has the dpkg and apt packages already installed they'll be used.
We're just testing fink, not dpkg.  You've got to draw the line somewhere.

There's no problem for the tests to rely on fink packages being already
installed.  The only thing you don't want is it to alter /sw.


> >  I've done this sort of thing before (look at ExtUtils::MakeMaker).
> 
> That's, IMHO, comparing Apples and Bananas. Sure, I have done stuff 
> like this before, too . But installing ExtUtils::MakeMaker is, in my 
> estimation (please correct me if I am wrong) much less complex than 
> install Fink and fink.

fink's about half the size.  Only has one platform to deal with.  They're
both large sets of crufty code.  They're both package build systems.  
They both build themselves.

MakeMaker contains several dummy Perl modules for testing.  It goes through 
the process of running the Makefile.PL and make and checking that all the 
output is correct and the module gets built and installed into a temp 
location.  In addition it tests the methods individually as best it can.

Its all basically the same technique except for this bootstrap bit which
I wouldn't worry about how we're going to test it just yet.


> >The ideal process is edit, build, test, install.  In order to do this 
> >you
> >need some sort of testing data.
> 
> Understood. But I find it hard to fit this schema on fink, because we 
> have two different kinds of install. Two different kinds of build. What 
> do you want to test, a full "Fink" installation (the whole distro, 
> meaning a bootstrap), or just installing "fink" (the package manager)?
> 
> I assumed so far that you meant the latter, but I am not sure anymore 
> :-).

Dunno yet, I've just gotten started.  Like I said, a lot of this will be
handled as necessary.  No point drawing up a big plan now when I hardly
understand how fink works.  I can't address testing bootstrap because I've
never really bothered to look at it.  Right now I'm just trying to figure
out where to go from Fink::Config and Fink::Base!

You've only just got the first 1% tested and already you're worrying about 
the last 1%.  Relax.  Have some dip.


> > A dummy install.  Some static data you can
> >beat on and don't care about mangling if you make a mistake.  Edit, 
> >build,
> >install, test means you have to install your untested code and *then* 
> >test
> >it against your live fink installation.  This means you find out that 
> >your
> >patch wrecks the fink database *after* its already done so to your 
> >running
> >fink.
> 
> Not that this is a good example, because it's trivial to restore the 
> fink database ;-)

And the broken "fink purge" that just accidentally deleted every package? :)


> A much nicer example is testing "fink cleanup", which removes unused 
> .debs. Testing that thoroughly would be a very nice thing. There are 
> still some quirks left with it. Writing some good tests should help a 
> lot towards finding and fixing those problems (and keeping them fixed).
> 
> For this to work, one would indeed need some kind of dummy 
> installation, in which one could put a dummy package set. Then create 
> dummy .deb files ("touch" should sufficient). Then run "fink cleanup" 
> and check if the correct .deb files/symlinks were deleted.

Yep, something like that.  Don't get ahead of yourself. :)


> For other things, we'd have a well designed dummy package set which 
> would cover many situations: package foo only in stable, only in 
> unstable, in both; newer in stable,newer in unstable, same versions; 
> etc.. Then test the output of fink list / fink desc etc.

Yep, those are the sorts of permutations you'll have to cover.  With
situations like that where the possiblities are near endless its best
to test as the bugs appear rather than drive yourself crazy trying to
do a complete coverage.


> Not really. There are simply two meanings to "install" in this context, 
> which might be cause of our problems understanding each other :-)
> 
> (1) Bootstrap
>   -> create a brand new Fink installation with a new config file, fink 
> executable, the essential packages compiled etc.
> (2) Inject
>   -> inject a new package

Re: [Fink-devel] problems with g77 3.4 segmentation faults

2003-11-09 Thread wgscott
Hi Jeff et al:

Many thanks again for your help with this.  Although this version did in fact get rid of my segmentation fault, it didn't solve my other problem, which means the other problem was not specific to compiler version, so at least I have learned something.  

Given this, and what Remi Mommsen reports, I cannot make a compelling argument in favor of using version 3.3.2 instead of 3.4.  (The other problem occurs in a package that isn't in fink, and I have now found can be solved using IBM's xlf.)


I'll submit a bug report to the g77 folks for the seg fault in 3.4.  I haven't yet had a chance to see if it is platform-indepenent.

Again, thanks for helping with this.

Bill Scott


On Nov 8, 2003, at 5:12 PM, Remi Mommsen wrote:

Hi Jeff,

I tried your new g77 3.3.2 on 10.3 with cernlib. cernlib builds fine, but the test fails as it was the case with 3.3(.1) (see our email exchange from Jul 17, 2003). With the g77 3.4-20031015 it works flawlessly.

Thanks for your effort.

Remi


William G. Scott

Associate Professor
Department of Chemistry and Biochemistry
and The Center for the Molecular Biology of RNA
Sinsheimer Laboratories
University of California at Santa Cruz
Santa Cruz, California 95064
USA

phone:  +1-831-459-5367 (office)
+1-831-459-5292 (lab)
fax: +1-831-4593139  (fax)
url:  http://chemistry.ucsc.edu/~wgscott/ 







[Fink-devel] Resubmitting packages for 10.3

2003-11-09 Thread Stefan Langerman
I have noticed that my package descriptor for qhull [818090] which got 
accepted in 10.2/unstable is not on the fink website package list 
anymore. It still is in the 10.2/unstable tree. I tested it for 10.3
and it works fine.

Is there a standard procedure for requesting for a package to be pushed 
in 10.3? Should I just resubmit it in the tracker?

I also have a few other package descriptors that have been pending
(for a while) on the tracker, that either work fine or which I have
fixed for 10.3. Should I resubmit them separately?
[821038] mdbtools-0.5  (to read MS access databases on Mac)
[743446] xeukleides(geometric constructions program)
[743448] ipe 6.0 preview 10 (great vector drawing program)
-- Stefan.



---
This SF.Net email sponsored by: ApacheCon 2003,
16-19 November in Las Vegas. Learn firsthand the latest
developments in Apache, PHP, Perl, XML, Java, MySQL,
WebDAV, and more! http://www.apachecon.com/
___
Fink-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/fink-devel


Re: [Fink-devel] using *-shlibs? *-dev? When? Where?

2003-11-09 Thread Max Horn
Am Sonntag, 09.11.03 um 03:30 Uhr schrieb Stefan Langerman:

I am still trying to figure out the whole -shlibs business.

I suggest reading 
http://fink.sourceforge.net/doc/packaging/policy.php#sharedlibs

Just looking at a library package like glib2. It has 2 splitoffs
which are glib2-shlibs and glib2-dev. If I understand the conventions
correctly, I should only "Depend: glib2-shlibs", and then I guess
"BuildDepend: glib2-dev". Ok, but then who depends on glib2 itself?
why should it ever be installed ?
Let me start with a maybe better example to understand the scheme: curl.

curl-shlibs: provides shared libraries; packages using libcurl have to 
depend on it
curl-dev: provides header files; packages using libcurl have to 
builddepend on it, to ensure that they "see" the headers when compiling
curl: provides the curl command line tool. packages which want to use 
curl in script may depend on it. Other than that, it's up to the user 
to install it, and the user will install it if he wants to use the curl 
tool.

As for glib2, let me quote its DescPort field:
"glib2 provides etc/glib-2.0/charset.alias for darwin because there's 
no system-wide charset.alias."
It also contains localized text files. As such, I imagine ther user can 
remove it, as long as he's using a pure english system. The user may 
install it to get nice non-english messages etc. In that regard, glib2 
is a bit unusual. It stems from the strict separation between -shlibs 
(which contains shared libraries, and nothing else), and the main 
package - in this case, there simply isn't much left for the main 
package.

Often the main package also contains binaries etc. which are useful for 
the user, but optional.


Grepping around for glib2, I see that There are BuildDepends used
both for glib2 and glib2-dev. There are also Depends on glib2
and glib2-shlibs.
Are some of these packages wrong? Or is there something I don't get?

It's valid to (build)depend on glib2. It's not valid to depend on 
glib2-dev, but you may builddepend on it.

Cheers,

Max



---
This SF.Net email sponsored by: ApacheCon 2003,
16-19 November in Las Vegas. Learn firsthand the latest
developments in Apache, PHP, Perl, XML, Java, MySQL,
WebDAV, and more! http://www.apachecon.com/
___
Fink-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/fink-devel


Re: [Fink-devel] Begining of a fink "roadmap", this is just an overview draft

2003-11-09 Thread Max Horn
Am Sonntag, 09.11.03 um 06:15 Uhr schrieb Michael G Schwern:

On Sun, Nov 09, 2003 at 03:30:31AM +0100, Max Horn wrote:
AFAIK this is simply the ability to generate fink from fink.in and 
the
like
without installing it
Well fink needs a working Fink installation. It is possible to do some
hacking and get it to work in a partial pseudo installation (we do 
this
for the package database, which is driven by fink on a Linux server),
but that only allows access to a fraction of fink's capabilities.

I am not sure how (if?) you suggest we could run fink w/o having a 
Fink
installation around. Personally I see no point in it, either. Anybody
who wants to develop or test fink will have fink installed.
Sorry to have not been clear, I intend to build up a dummy fink 
installation
for testing purposes.  Because fink is already fully relocatable (ie. 
/sw isn't
hard wired) this should be pretty straightforward.  It'll probably 
consist
of a config file (which is already there in t/basepath/etc/fink.conf) 
and a
small dist tree containing whatever we need to test things.  No point
laying it all out upfront, it'll build up with whatever is needed at 
the
time.
Of course this way you can only test a small fraction of Fink. E.g. the 
whole bootstrap isn't covered by this (which includes compiling stuff 
like dpkg and apt). Also, you can't test building & installing packages 
this way (i.e. without source modifications to fink), because fink 
needs root & dpkg for this, something which requires a) interactivity, 
and b) dpkg/apt/etc. in the Fink installation, which wouldn't be there. 
The latter problem maybe can be worked around by symlinks from 
/sw/bin/dpkg to /my/fake/sw/bin/dpkg etc. Dunno if that would work.

  I've done this sort of thing before (look at ExtUtils::MakeMaker).
That's, IMHO, comparing Apples and Bananas. Sure, I have done stuff 
like this before, too . But installing ExtUtils::MakeMaker is, in my 
estimation (please correct me if I am wrong) much less complex than 
install Fink and fink.


The ideal process is edit, build, test, install.  In order to do this 
you
need some sort of testing data.
Understood. But I find it hard to fit this schema on fink, because we 
have two different kinds of install. Two different kinds of build. What 
do you want to test, a full "Fink" installation (the whole distro, 
meaning a bootstrap), or just installing "fink" (the package manager)?

I assumed so far that you meant the latter, but I am not sure anymore 
:-).


 A dummy install.  Some static data you can
beat on and don't care about mangling if you make a mistake.  Edit, 
build,
install, test means you have to install your untested code and *then* 
test
it against your live fink installation.  This means you find out that 
your
patch wrecks the fink database *after* its already done so to your 
running
fink.
Not that this is a good example, because it's trivial to restore the 
fink database ;-)

A much nicer example is testing "fink cleanup", which removes unused 
.debs. Testing that thoroughly would be a very nice thing. There are 
still some quirks left with it. Writing some good tests should help a 
lot towards finding and fixing those problems (and keeping them fixed).

For this to work, one would indeed need some kind of dummy 
installation, in which one could put a dummy package set. Then create 
dummy .deb files ("touch" should sufficient). Then run "fink cleanup" 
and check if the correct .deb files/symlinks were deleted.

For other things, we'd have a well designed dummy package set which 
would cover many situations: package foo only in stable, only in 
unstable, in both; newer in stable,newer in unstable, same versions; 
etc.. Then test the output of fink list / fink desc etc.



 So, in essense,
seperating the build and install phases and making it automatable.
You mean more automatic than "./inject.pl" ? Telepathy controlled
maybe? 8-). Seriously, would you please explain what that would mean?
I'm just a bit confused.  I forgot inject.pl can be run independently 
of
bootstrap.pl.  inject.pl should work.
Besides this, as I explained, if you look at fink.info.in, then you see 
that setup.sh is essentially the "build" and install.sh the "install 
phases you talk about. What you want, essentially, is not (to my 
understanding) a separation of build/install (there isn't much to 
separate anyway, both are trivial). Rather you want a "setup test 
environment" phase. *That* is something I can understand and could work 
forward to.

Like I said, I'm the wrong person to be normalizing the build process 
as
I don't really know anything about it.  I just know what the end result
has to be for it to be testable.


But note that to be able to actually use fink as a whole, it has to be
installed into a working "Fink" installation, i.e. with all its
environment setup. You'd have to do some hacking to be able to use it
w/o installing it.
Hmm, circular build dependencies.
Not really. There are simply two meanings to "

[Fink-devel] using *-shlibs? *-dev? When? Where?

2003-11-09 Thread Stefan Langerman
I am still trying to figure out the whole -shlibs business.

Just looking at a library package like glib2. It has 2 splitoffs
which are glib2-shlibs and glib2-dev. If I understand the conventions
correctly, I should only "Depend: glib2-shlibs", and then I guess
"BuildDepend: glib2-dev". Ok, but then who depends on glib2 itself?
why should it ever be installed ?
Grepping around for glib2, I see that There are BuildDepends used
both for glib2 and glib2-dev. There are also Depends on glib2
and glib2-shlibs.
Are some of these packages wrong? Or is there something I don't get?

-- Stefan.



---
This SF.Net email sponsored by: ApacheCon 2003,
16-19 November in Las Vegas. Learn firsthand the latest
developments in Apache, PHP, Perl, XML, Java, MySQL,
WebDAV, and more! http://www.apachecon.com/
___
Fink-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/fink-devel