anchor.diff:        --set SELF_ROOT "$out"
     '';
   
  -  meta = {
  +  meta = with stdenv.lib; {
       description = "A prototype-based dynamic object-oriented programming language, environment, and virtual machine";
       homepage = "https://selflanguage.org/";
  -    license = stdenv.lib.licenses.bsd3;
  -    maintainers = [ stdenv.lib.maintainers.doublec ];
  -    platforms = with stdenv.lib.platforms; linux;
  -    broken = true; # segfaults on gcc > 4.4
  +    license = licenses.bsd3;
  +    maintainers = [ maintainers.doublec ];
  +    platforms = platforms.linux;
     };
   }
  
positive.code: { fetchgit, stdenv, xorg, makeWrapper, ncurses, cmake }:
  
  stdenv.mkDerivation {
    # The Self wrapper stores source in $XDG_DATA_HOME/self or ~/.local/share/self
    # so that it can be written to when using the Self transposer. Running 'Self'
    # after installation runs without an image. You can then build a Self image with:
  
negative.code:   # This image can later be started with:
    #   $ Self -s myimage.snap
    #
    pname = "self";
    version = "2017.1";
  
    src = fetchFromGitHub {
      owner = "russellallen";
      repo = pname;
      rev = version;
      sha256 = "C/1Q6yFmoXx2F97xuvkm8DxFmmvuBS7uYZOxq/CRNog=";
    };
  
    nativeBuildInputs = [ cmake makeWrapper ];
    buildInputs = [ ncurses libX11 libXext ];
  
    selfWrapper = ./self;
  
  