If you are going to offer a reward for something, I figure why screw around. Make it hard, and make it worth it.
So I'm offering a vertical metre of beer as a reward.
I define this as "A metre high pile of slabs/cartons/crates/24-packs/whatever of your favourite non-rediculously-priced beer"
I've offered it once before. The same reward was posted to anyone that could crack Acme::BadExample and make a released version of perl load it normally, without the use of source filters or needing to patch the perl binary.
After submitting a rejected entry that loaded it, but needed a patch to bleadperl, Jos Boumans eventually won it almost a year later when Perl 5.9.2 was released (negating the need for the patch) and the same entry became a winner
So I'm offering a new reward to take it's place. This time around you don't even need to write any code to win it.
A metre of beer, as well as my unending respect, is offered for the following.
--------------------------------------------------------
1. An installation of Perl for Windows.
2. Said Perl must be current or relative new. 5.8.7 or higher.
3. Said installation MUST be in the form of an
4. The installer MUST also install a (legal) compiler (preferably gcc), preconfigured to work normally when installing XS modules from CPAN.
5. The installer should be able to be freely redistributed under normal perl terms and used on a variety of NT-based Windows operating systems equal to or newer than Windows 2000.
6. Once installed, Perl MUST be able to install modules direct from CPAN using the CPAN shell. (The installer doesn't need to preconfigured CPAN.pm) This also includes XS-based modules.
Clarification:
6b. CPAN MUST work in an Firewall/NAT/ADSL-type environments WITH passive-level FTP, but without full bidirection FTP, due to the sheer volume of Windows hosts in this situation. A solution which only works on public IPs is not enough. See below for details.
7. A build script or some form of build instructions should be provided, such that any other presumed-competant sysadmin should be able to replicate the process for newer Perl or Windows releases.
8. There is NOT an expectation that everything be your own work, you may (legally) use any other project as a base or mercilessly (legally) steal code, as long as the above conditions are met.
9. The winner is defined as the first person to post a working URL to the installer in a bottom-level comment below, and emails me to say they completed it. The winner may be an individual, a syndicate or even an entire PerlMongers group.
--------------------------------------------------------
That's it. I just want a Windows Perl installer that works and can install XS modules from CPAN normally, as we might expect from a Linux install.
I don't need or want a full blown ActiveState replacement with a ton of modules precompiled and bundled in, in fact I'd prefer it it JUST had the default Perl install only.
And that's it... you don't need to code, you just need to know or work out how to build Perl on Windows, set up a compiler and then from that build an installer.
I want to start bulk testing modules on Win32. And I need a stock Perl install that I can just run an installer to get, and that will work. It doesn't seem that hard, but I've watched it now defeat a number of good sysadmins and developers.
If anyone has comments that might give clues to the contestants, I'd love to hear them.
most of this seems to be in indigo perl (Score:1)
http://www.indigostar.com/indigoperl.htm#GUI%20Package%20Manager [indigostar.com]
uri
ps. did i say how much i hate web interfaces for text stuff like replies to blo
Re:most of this seems to be in indigo perl (Score:1)
For those playing along at home, this does B constitute a winning response, as it fails points 3, 4, 5 and 7.
Re:most of this seems to be in indigo perl (Score:1)
That will teach me to use POD in a HTML entry. To repeat, it does B<not> constitute a winner response.
PXPerl (Score:2)
If this, in your opinion, a winner, then I'd prefer the price to go to the person that is responsible PXPerl and that isn't me.
Re:PXPerl (Score:1)
But unfortunately the original author has gone AWOL and not been heard from in 2 months.
It currently fails points 4 and 7.
If someone can fix that so that the compiler stuff all installs as well, the reward is yours to allocate as you see fit. The PXPerl author certainly isn't around to claim the prize at the moment...
Re:PXPerl (Score:1)
Earlier Perls (Score:2)
For me I'd like to see point 2 be Perl 5.6.1 or higher. There are still a lot of Perl apps out there running 5.6.1 for various reasons. I still get emails from people who find my CPAN testers reports asking about installing modules on Windows for 5.6.1.
Re:Earlier Perls (Score:1)
http://stennie.org/camelpack/setup56.exe [stennie.org]
You should also be able to install just gcc and nmake to enable compiling with an existing activeperl install.
Cheers,
Stephen
Re:Earlier Perls (Score:2)
Excellent work. Wish I could be there at the presentation. Still, I'm sure Mike Bissett will help out with the Birmingham.pm congratulations ;)
A Windows installer installer for perl + gcc ;) (Score:1)
http://stennie.org/camelpack/ [stennie.org]
I picked one combination (and listed some alternatives considered) but the approach should be easily adaptable and maintainable.
Cheers,
Stephen
Re:A Windows installer installer for perl + gcc ;) (Score:1)
During installation, I only checked the mingw installation, to save some time.
Installation failed, it couldn't find the file it thought it had downloaded to the tmp directory.
I tried to uninstall, that failed with
'an attempt was made to expand the "app" constant but Setup didn't create the "app" dir'
so the program (listed as "2006.1" in add/remove programs) is still there.
Exactly how did yo
Re:A Windows installer installer for perl + gcc ;) (Score:1)
Regarding inno/isx, I installed:
- Innosetup
- IStool
- IStool download DLL
Re:A Windows installer installer for perl + gcc ;) (Score:1)
If you need to remove a bogus uninstall entry, the path in regedit to delete is:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{2C936648 -0116-46EA-9398-49258B6325C3}
Cheers,
Stephen
Re:A Windows installer installer for perl + gcc ;) (Score:1)
Re:A Windows installer installer for perl + gcc ;) (Score:1)
"confirmation OR rejection"
Rejected, just. (Score:1)
1. Pass
2. Pass
3. Pass (with comment)
While I'm a bit iffy about not having the other installers embedded, it did work just fine, and since the goal is to install from CPAN, requiring a network connection for the installation isn't unreasonable. So Pass.
4. Pass
5. Pass
6. Fail (with comment)
Running the installation inside the image worked, but the CPAN.pm first-time configuration process failed utterly. After 2 hours of debugging and 4 new RT bug
Re:Rejected, just. (Score:1)
So the recommendation is to set FTP_PASSIVE=1 at the system level in.
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment
Re:Rejected, just. (Score:1)
Cheers,
Stephen
Re: I hereby offer a reward of a vertical metre of (Score:1)
Just as an alternative to stennie's above, here's one that uses a built-from-source perl, rather than ActiveState's
(I don't like that I can't distribute PAR-built exe's built using AS's perl unless I get written permission)
You'll need this zip file: http://www.fireartist.com/tmp/vanillaPerl5.8.7.zip [fireartist.com] (41.5 KB)
Unzip the file in
c:\it'll create a folder namedc:\vanillaPerl5.8.7Just follow the instructions in
c:\vanillaPerl5.8.7\build\installer.txtThis is a very basic installation including perl5.8.7,
Re: I hereby offer a reward of a vertical metre of (Score:1)
Rejected. (Score:1)
- Doesn't set FTP_PASSIVE=1
- gzip.exe crashes
- Other minor CPAN.pm issues that might be fixed by the above being corrected.
So at this time the contest is still open, with no winner, but two contestants closing in on the prize!
Re: I hereby offer a reward of a vertical metre of (Score:1)
Its not a perl level issue at all. On win32 you can't delete open files. Period. Any installer will end up confronting this issue. Its the reason for the dreaded "you must reboot your machine" messages that are so well known in the Windows world.
Some install techniques on
Re: I hereby offer a reward of a vertical metre of (Score:1)
Maybe CPAN / M::B could get round it, if libwin32 is installed, by adding a registry entry in the relevant 'run once' key, and asking the user to reboot.
I'd personally find it quite amusing seeing cpan say "installation finished, please reboot to continue"!
I suppose a problem would be if it happens when installing a prerequisite. Would it be sufficient for cpan to say, "please reboot, then run 'install Foo' again", rather than try to remember the state it was in?
niPerl (Score:2)