Change:
Atom editor ships with Git and GitHub integration bundled since version 1.18.0 (). On NixOS it does not work. The errors in the developer's console: Seems like GitHub integration package is shipped with it's own binary and indeed trying to execute it from a shell results in error: I suppose the binary needs to be patched with and I would love to contribute a PR, but frankly I'm a JavaScript monkey and can't figure out where to start, so I'll do the next best thing and file an issue. Install atom editor: Initialize a Git repository: Make some changes and start Atom editor If it's not already opened, open Git panel with Note that tree view shows changes correctly (green file), but the Git panel is empty Open Dev Tools and see red error messages. System: 17.09pre113107. (Hummingbird) Nix version: nix-env (Nix) 1.11.13 Nixpkgs version: 17.09pre113107. Sandboxing enabled: build-use-sandbox = false
Above pull request resolves the issue. I'm not the best at using atom, but I saw a green line next to my changes made, and no errors output to stdout when I opened the git panel.
Maybe replace the binary with a symbolic link to our own git?
How can I test it locally? I suppose I need to clone this report, checkout your PR and use somehow, but how do I point it to use the expression from the PR? I'm a total noob and a monkey when it comes to Nix and NixOS
I ran it using
That works as well and is a cleaner way to handle it in my opinion. I opened a new PR because my last PR I forgot to branch before pushing and it was PR'd to my master branch.
Hi again and thanks for all the help! I'm a little bit embarrassed to ask, but after two days of trying I still can't figure how to install this patched version of Atom using . I have a clone of at . Current contains the patch. If I start as explained by it works - I have an editor with working Git integration: but if I try to install it in my standard env it apparently installs the un-patched version: I have also tried variant with . Then it compiles and installs version 1.18 (I don't understand where is it coming from). How can I install the version from my cloned repository and - perhaps more importantly - troubleshoot this kind of issues? Is there a way to print a path to expression used by ? Or the expression itself?
With you can use the option to point to a Nix expression, in this case your Nixpkgs repository. The option is not used by because does not use . Instead, it checks by default . It is confusing...
It worked! Thank you For the record and a benefit of posterity, this is the whole command that installs a package from local clone:

Discussion:
<del> { stdenv, fetchurl, lib, makeWrapper, gvfs, atomEnv}: </del> <ins> { stdenv, pkgs, fetchurl, lib, makeWrapper, gvfs, atomEnv}: </ins> stdenv.mkDerivation rec { name = "atom-${version}";

--set-rpath "${atomEnv.libPath}"  $out/share/atom/resources/app/apm/bin/node <ins> rm -f $out/share/atom/resources/app/node_modules/dugite/git/bin/git ln -s ${pkgs.git}/bin/git $out/share/atom/resources/app/node_modules/dugite/git/bin/git </ins> find $out/share/atom -name "*.node" -exec patchelf --set-rpath "${atomEnv.libPath}:$out/share/atom" {} ; paxmark m $out/share/atom/atom