!LemuOOvbWqRXodtSsw:nixos.org

NixOS Reproducible Builds

543 Members
Report: https://reproducible.nixos.org Project progress: https://github.com/orgs/NixOS/projects/30123 Servers

You have reached the beginning of time (for this room).


SenderMessageTime
26 Oct 2021
@mjolnir:nixos.orgmjolnir set a profile picture.02:00:32
@mjolnir:nixos.orgmjolnir changed their profile picture.02:23:47
@mjolnir:nixos.orgmjolnir changed their profile picture.02:33:16
@fabianhjr:matrix.orgFabián Heredia joined the room.14:39:26
@artturin:matrix.orgartturin
In reply to @artturin:matrix.org
can diffoscope follow symlinks?
{
  inputs = {
    nixpkgs.url = "/home/artturin/nixgits/my-nixpkgs";
    nixpkgsUnstable.url = "github:NixOS/nixpkgs/nixos-unstable";
    flake-utils.url = "github:numtide/flake-utils";
  };

  outputs = inputs@{ self, nixpkgs, flake-utils, nixpkgsUnstable }:
    flake-utils.lib.eachSystem [ "x86_64-linux" ] (system:
    let 
      pkgs = import nixpkgs { inherit system; overlays = [ self.overlay ]; };
    in rec {
      packages = {
        diffscript = pkgs.diffscript;
        difffarm = pkgs.difffarm;
      };

    }) // {

      overlay = self: super: {
        difffarm = let
        in with self; linkFarmFromDrvs "difffarm" [
          bash
          coreutils
        ];
        crossdifffarm = let
          crosspkgs = import nixpkgs { inherit (self) system; crossSystem = nixpkgs.lib.systems.examples.aarch64-multiplatform; };
        in with crosspkgs; linkFarmFromDrvs "difffarm" [
          bash
          coreutils
        ];
        diffscript = let
        in with self; stdenvNoCC.mkDerivation rec {
          name = "diffscript";
          nativeBuildInputs = [ nixpkgsUnstable.legacyPackages.x86_64-linux.diffoscope ];
          installPhase = ''
            mkdir $out
            readlinkOrig=($(readlink ${difffarm}/*))
            readlinkCross=($(readlink ${crossdifffarm}/*))
            names=($(ls ${difffarm}))

            for ((i=0;i<=''${#readlinkOrig[@]};i++)); do
              diffoscope "''${readlinkOrig[i]}" "''${readlinkCross[i]}" > $out/''${names[i]} || true
            done

          '';
          dontUnpack = true;
          dontPatch = true;
          dontConfigure = true;
          dontBuild = true;
          dontFixup = true;
        };
      };
    };
}
16:19:59

Show newer messages


Back to Room ListRoom Version: 6