Skip to content

windows #40

Open
Open

Description

its using the older node-waf. There is not node.gyp bindings.

is this designed to work on windows at all ?

Activity

  1. mildsunrise commented on Jan 31, 2013

    @mildsunrise
    Contributor

    Dunno, but Node, NPM, and 99% of assets are probably designed
    for UNIX-like systems. Since Microsoft made Windows be the only
    OS that is not UNIX-like, don't expect much support on there either...

  2. djrenren commented on May 29, 2013

    @djrenren

    Okay so node and npm are currently built entirely with windows in mind, that's why node-gyp exists. Not to mention the whole point of libgit2 is to be a cross-platform git implementation (yes, windows included). So what needs to be done to make this work under windows?

  3. mildsunrise commented on May 30, 2013

    @mildsunrise
    Contributor

    Frankly, I prefer to understand "multiplatform" as "on every standard platform".
    Then Node-GYP wasn't specifically created to add support for Windows.

    -- BEGIN RANT --

    Microsoft paid Joyent to put some Windows support on Node.JS,
    but it still creates a lot of problems because you expect a path to start with
    /, and you expect the url module to work both on URL paths and system
    paths. And a lot more like these. You expect your system to be standard.

    These, and more reasons, make Git itself not designed to run on Windows.

    So, everyone out there, please don't use Windows. You make the others
    (and yourself) a huge favour by using any other platform. I wouldn't even
    consider Windows a platform. ;)

    -- END RANT --

    PD: I'm partidary of using Node-GYP, but not because of Windows support.

  4. mildsunrise commented on May 30, 2013

    @mildsunrise
    Contributor

    @jmrenner IF libgit2 was to be truly crossplatform, it would have to support Solaris, SPARC, Sun OS, Windows 98/95/NT/ME, etc too. "crossplatform" doesn't necessarily mean every platform.

  5. djrenren commented on May 30, 2013

    @djrenren

    I'd like to refer you all to the official libgit2 page:
    crossplatform

    As you can see windows is supported. So regardless of how all of you define "crossplatform" we should be able to get this working under windows.

  6. mildsunrise commented on May 30, 2013

    @mildsunrise
    Contributor

    @jmrenner

    I know, but I said Git is not designed to run on non-standard systems.
    Of course, LibGit2/Node/Gitteh can workaround these problems but it's
    better to not use Windows at all.

    You see, everytime Windows is booted, someone in the world gets shot.[citation needed]
    So, instead of demanding support for a corrupt platform, please make the switch.
    We'll (nearly) all thank you. :)

  7. samcday commented on May 30, 2013

    @samcday
    Contributor

    @jmendeth Not sure I completely agree with you on this one.

    To lead in, yes, Windows generally sucks and engineers tend to work with Linux more as it's much easier to reason with, is open source, etc. So I always considered my primary audience to be Linux/OSX users. Further, Node deployments on PaaS are the least masochistic way to get something running nowadays, and other than Azure I'm fairly sure most PaaS infrastructure out there would be Linux based.

    BUT Windows support for gitteh is important, as it should be as cross platform as the native library it wraps.

    That said, I have not been able to scrounge up enough time lately to do this project much justice for updating to the latest libgit2 and making install flow for Linux/OSX rock-solid as it is, let alone adding Windows to the mix. I can promise you that the current master branch is fundamentally where I want the library to be (The CoffeeScript bridge into native code will be where most of the work happens), so if anyone wants to put their hand up for making node-gyp + CMake work nicely under Windows, the Internets will be forever in your debt!

  8. mildsunrise commented on May 30, 2013

    @mildsunrise
    Contributor

    BUT Windows support for gitteh is important, as it should be as cross platform as the native library it wraps.

    Well, a wrapper's goal is to expose functionality, not to get to the same platforms.
    The Libgit2 guys wanted/knew/had the time to add the necessary workarounds,
    but I may not, and that doesn't make my wrapper a bad wrapper, does it?

    That said, I won't make changes specifically to add support just for one unstandard platform.
    BUT if someone takes the time to do it (or it works without doing nothing), then it's fine to
    merge the changes. :)

    Besides, by doing that we incite more people to switch, which is positive for all of us.

  9. djrenren commented on May 30, 2013

    @djrenren

    @jmendeth I understand you hate windows. Doesn't mean people don't use it.

    I get that a lot of people don't want to work with Windows or put in the work to support it. So, I return to my original question, does anyone have something resembling a list of things that need to be done in order to support windows?

    If not, I'll just dig a little and see if I'm able to make it happen.

  10. samcday commented on May 31, 2013

    @samcday
    Contributor

    @jmrenner Your last comment is spot on. There has been interest in Windows support in the past, and I am absolutely interested in making it happen for gitteh, but I personally don't have the time or care-factor to make it happen.

    Here's what would need to happen though:

    • Existing native codebase of gitteh would need to be evaluated to see how hard it is to compile under MSVC.
    • Node-gyp config would need updating to handle Windows compilation.
    • libgit2 itself compiles under CMake, so build process would need to be able to trigger cmake build correctly in Windows, this process currently occurs in install.js
  11. mildsunrise commented on May 31, 2013

    @mildsunrise
    Contributor

    @jmrenner Just a clarification. I don't hate Windows. I just don't want to spend time supporting it.
    That means if @samcday or you add the support for Windows, then I'm perfectly fine with it.
    And I'd like to use Node-GYP, but not because of the Windows support.

  12. ben commented on Jun 8, 2013

    @ben
    Member

    I took a look at this, and it doesn't seem that hard.

    • The codebase looks like pretty standard C++, and the MSVC compiler is pretty good at that.
    • The node-gyp config shouldn't be too hard either; mostly it's dependencies on which and env. The libgit2 build through cmake should already work.

    Expect a PR when the more immediate build issues are resolved.

  13. zaggino commented on Feb 23, 2014

    @zaggino

    Hi guys, are there any news on this?

  14. samcday commented on Feb 24, 2014

    @samcday
    Contributor

    @zaggino unfortunately gitteh is currently inactive, pending a primary contributor. So no, Windows support hasn't been added yet. You might want to check out nodegit, it may suit your needs.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions