anchor.diff:    meta = with lib; {
       description = "Yet another keyboard configurator";
       homepage = "https://caniusevia.com/";
  -    license = licenses.unfree;
  +    license = licenses.gpl3;
       maintainers = with maintainers; [ emilytrau ];
       platforms = [ "x86_64-linux" ];
     };
  
positive.code: 
  let
    pname = "via";
    version = "1.3.1";
    name = "${pname}-${version}";
    nameExecutable = pname;
    src = fetchurl {
      url = "https://github.com/the-via/releases/releases/download/v${version}/via-${version}-linux.AppImage";
      name = "via-${version}-linux.AppImage";
      sha256 = "d2cd73d280a265149fedb24161ec7c575523596c4d30898ad6b5875e09b3f34a";
    };
    appimageContents = appimageTools.extractType2 { inherit name src; };
  in appimageTools.wrapType2 {
  
negative.code: 
    extraInstallCommands = ''
      mv $out/bin/${name} $out/bin/${pname}
      install -m 444 -D ${appimageContents}/via-nativia.desktop -t $out/share/applications
      substituteInPlace $out/share/applications/via-nativia.desktop \
        --replace 'Exec=AppRun' 'Exec=${pname}'
      cp -r ${appimageContents}/usr/share/icons $out/share
  
  