win32 support again

  • stormrider666

    stormrider666 - 2007-08-12

    I didn't want to say anything until I got something into a working state, but now...
    I've got comix into a working state with win32. I'd rather not let the work just disappear like seems to have happened before. Any advice on what to do? I have no idea how to provide a patch, though the code might need a tidy since I dropped some debug in.

    • David Kremer

      David Kremer - 2008-02-29

      Hello, I'm intersted about a win32 support for comix.

      I have thought to use py2exe, with rewriting the non-portable pieces of code.

      How did you do to make Comix working with MS-windows ?

      It would be great to know more about that.

    • stormrider666

      stormrider666 - 2008-05-26

      Hi there,
      the portability was mainly to get the paths right and to make the path separators compatible .. I think.
      Its been a while since I touched it.
      Is this project still being supported?
      I stopped tweaking when I saw a newer beta version in source control and was waiting to see if anything happened with it.

    • David Kremer

      David Kremer - 2008-05-27

      Hello, yes, it's true, some pieces of code use directly '/' Unix separators.

      Second thing is the using of 'os.environ' dictionnary. 'os.environ['HOMEPATH']' is for
      windows, and 'os.environ['HOME']' works only on Linux. It is maybe another similar problem that with tempdir, 'os.environ['TMP']', that should be examinate.

      Third, the install script, which use the default UNIX paths ('/usr/local', etc) in raw
      strings. In fact, I think that the game could use the distutils module for installation
      stuff, that will make the viewer more easily portable for Windows and Linux.

      For this last point, that needs knowledgement and maybe modifications of the code's
      organization and soft's conception, but that could be possible.

      In fact, I think the proper way is to provide a 'comix' python module, and let the main
      script use it, but I don't know very well GTK and comix stuff anyway, so I don't know.

      So, great to speak about this with you. To later, stormrider666.


    • stormrider666

      stormrider666 - 2008-05-28

      ah yes its all coming back to me now.
      I hadn't thought of using os.environ['TMP'], I just hard coded a tmp path.
      All the hardcoded os.environ['HOME'] were changed to variables and selected based on Then path constructions were replaced with os.join 's or os.sep 's

      oh and the permissions in the image properties dialog had to be tweaked since pwd.getpwuid didn't work too well on windows.

      I think what got me down was the number of places I needed to change stuff. It could be organised a bit better to cope with cross-platform support.
      Thats why I was waiting to see what happened with the beta in the repo.

      Good speaking to you as well.

    • David Kremer

      David Kremer - 2008-05-31

      Hello, I think that the method 'putenv(key, value)' could be managed the environment issue between Linux and Windows, like that (just an exemple) :

      if sys.platform is 'win32' :
        os.putenv('HOME', os.environ['HOMEPATH'] )
        #here other changes related at windows port in os.environ


    • Jack Chu

      Jack Chu - 2008-08-01

      I've struggled to make comix running on Windows XP, here are my steps:

      1. first install pygtk all-in-one package and PIL
      2. python instll
      3. comment out all pwd module in bin\comix
      4. setup HOME environment variable such as set HOME=%HOMEPATH%
      5. change 'infile = os.path.dirname(path) + '/' + infile' to 'infile = os.path.join(os.path.dirname(path), infile)'

      although it works, I just think there some lurking bugs in comix Windows.


Log in to post a comment.