[04:03:02] [connected at Fri Mar 10 04:03:02 2006] [04:03:02] <> *** Looking up your hostname... [04:03:02] <> *** Checking ident [04:03:03] <> *** Found your hostname [04:03:33] <> *** No identd (auth) response [04:03:33] <> *** Your host is zelazny.freenode.net[zelazny.freenode.net/6667], running version hyperion-1.0.2 [04:03:33] [I have joined #peak] [12:02:13] ** pje has joined us [15:14:41] ** whit has joined us [15:44:42] whit is now known as whit|talk [16:36:21] ** cogumbreiro has joined us [16:36:23] lo all [16:36:27] pje, u there? [16:37:53] ** whit|talk has left IRC () [16:39:53] when using setuptools is there any way to generate an win32 installers that works with setuptools installations (generates the executable and whatnot)? [16:43:44] ** whit has joined us [17:37:03] ** whit has left IRC () [18:13:04] ** whit has joined us [18:13:13] ** whit has left IRC (Client Quit) [18:44:36] cogumbreiro, yes. [18:44:51] bdist_winist [18:45:02] er, bdist_wininst [18:45:18] if you do it on a setuptools-using package, you get one with an egg inside [18:45:52] hmm [18:45:53] strange [18:46:06] how so? [18:46:11] I have a setuptools package and it's not creating the setuptools friendly installer [18:46:23] what version of setuptools are you using? [18:46:25] I am generating it from linux [18:46:29] oh [18:46:34] I've never tried that. :) [18:46:38] only on Windows [18:46:46] still, what version of setuptools do you have? [18:46:46] oh... :( [18:47:08] setuptools-0.6a10dev_r41995 [18:47:22] isn't there a way to do it from Linux? [18:48:21] dunno [18:48:59] r41692 added roundtripping of eggs in .exe files [18:49:17] What does bdist_wininst do? [18:49:28] creates a package as if there was no setuptools [18:49:41] if I have two packages it will just put them on site-packages [18:49:45] Does the package import setuptools? [18:50:08] on setup.py? [18:50:09] yes [18:50:11] note that the created .exe should install an .egg-info subdirectory alongside the package [18:50:14] I can create eggs with it [18:50:30] and that's all setuptools needs to recognize the installed package [18:51:36] it doesn't put the .egg-info inside the installer [18:51:47] and nor do the created scripts work [18:54:17] well, you might try upgrading setuptools [18:55:01] r42345 has some fixes for script issues that might relate [18:56:26] cool, I will then [18:56:40] And I just tried that revision on Linux and built a setuptools win32.exe installer [18:57:13] and it has the .egg-info at least [18:58:08] although I suspect the scripts are hosed [18:58:43] nice, I will update it in a few mins and tell you how it went [18:58:46] it looks like setuptools builds the scripts as if you were on Linux, rather than win32 [18:58:47] thx :) [18:58:55] yes [18:59:01] the script has no 'py' extension [18:59:07] at least my version [18:59:16] more precisely, the script has no -script.py and .exe [18:59:31] exactly [19:00:10] so, it doesn't support cross-compiling scripts for bdist_wininst [19:00:23] Guess I should add that to my bug list. :) [19:00:30] Cool :) [19:00:44] so meanwhile I have to create the wininst on windows, right? [19:00:50] Doesn't mean it'll ever get *done*. :) [19:00:57] yes [19:01:08] is it difficult to do? [19:01:14] I could do it and send u the patch [19:01:17] ironically enough, if you use easy_install and point it at the broken .exe, it will turn it into a valid egg [19:01:34] 'point it' how? [19:01:36] the fix would be difficult, yes, because currently setuptools doesn't patch bdist_wininst [19:01:44] ah [19:01:47] easy_install /path/or/url/to/.exe [19:02:03] EasyInstall can turn bdist_wininst .exe's back into eggs [19:02:17] bug eggs aren't double clickable... :( [19:02:22] and it'll fix the scripts in the process, because it rebuilds them. [19:02:48] You could set up a shell association from .egg to EasyInstall. ;) [19:02:50] if .egg extension was registred under windows it would be great [19:03:19] You wouldn't even need a program for that, since EasyInstall already exists. Just a .reg file would do the trick. :) [19:04:05] In fact, there's an easy_install.exe, though you might want to make a .pif so the console window stays open when it finishes running. [19:05:27] Or perhaps I could add an option that tells easy_install to stay running and wait for a keypress, although that wouldn't work for errors. :) [19:06:00] yes, it would be a problem... [19:06:03] Would be kind of nice, though, in that people could then just click on eggs in their web browsers to install them. [19:07:18] exactly [19:07:39] windows users are always spoilled :P [19:08:03] Ooh, no need for a .pif... just use "cmd /K easy_install blah blah..." [19:09:08] for what? [19:09:34] to run it from the extension [19:09:42] oh wait, I think that leaves you with a command prompt... [19:10:17] Although that may not be such a bad thing. [19:10:58] Anyway, it looks like you could just set up a default shell action for "Install Python Egg" that runs "cmd /D /K easy_install %s" [19:11:12] and how would one register that? [19:11:14] modulo a few issues for the exact location of easy_install.exe [19:11:31] Well, you can do it by hand in Windows Explorer - under Folder Options, File Types [19:11:31] yes, python24/scripts would need to be on the PATH [19:11:55] You could just put C:\Python24\Scripts\easy_intall.exe in there. [19:12:27] But everything needed to define it should also be definable as a .reg file [19:12:54] For that matter, I could create an easy_install command that could do the registration itself by modifying the registry [19:13:22] Although it'd probably be better to make a separate command for that. [19:13:46] yes, maybe [19:13:48] like "wineggs" or something. [19:13:53] :) [19:13:57] or eggreg :) [19:17:52] eheh [19:21:02] Hm, I've almost got it working, but it uses short (8.3) filenames instead of long filenames, which then doesn't work so well [19:23:24] :S [19:29:57] Sweet... you just have to use %L [19:33:51] Here's the .reg file: [19:33:52] Windows Registry Editor Version 5.00 [19:33:52] [HKEY_CLASSES_ROOT\.egg] [19:33:52] @="Python.Egg" [19:33:52] [HKEY_CLASSES_ROOT\Python.Egg] [19:33:52] "EditFlags"=dword:00000000 [19:33:54] "BrowserFlags"=dword:00000008 [19:33:56] @="Python Egg" [19:33:58] "AlwaysShowExt"="" [19:34:00] [HKEY_CLASSES_ROOT\Python.Egg\DefaultIcon] [19:34:02] @="C:\\Python23\\python.exe,0" [19:34:04] [HKEY_CLASSES_ROOT\Python.Egg\shell] [19:34:06] @="Install Egg for Python 2.3" [19:34:08] [HKEY_CLASSES_ROOT\Python.Egg\shell\Install Egg for Python 2.3] [19:34:10] [HKEY_CLASSES_ROOT\Python.Egg\shell\Install Egg for Python 2.3\command] [19:34:12] @="c:\\windows\\command\\cmd.exe /D /K C:\\Python23\\Scripts\\easy_install \"%L\"" [19:34:20] Feel free to modify to suit. :) [19:34:49] Should be interesting to see if you can browse the cheeseshop and click on eggs with that. [19:36:28] thanks alot! :) [19:40:04] This should be especially good with the latest setuptools, which can handle conflicts without needing any command line options. [19:40:26] (latest = what I just checked in 30 seconds ago, r42965 [19:41:03] Interestingly, you can also go browse your site-packages and double-click on eggs to change which version is active. :) [19:41:21] Although I suspect it won't work right for directory eggs. [21:21:54] ** pje has left IRC ("Client exiting") [21:35:58] ** DesreveR has joined us [21:51:07] ** r0nny has left IRC (Read error: 110 (Connection timed out)) [22:06:45] ** cogumbreiro has left us