{ sources, ... }@args: let pkgs = import sources.nixpkgs args; oldstable = import sources.nixpkgs-oldstable args; callPackage = pkgs.lib.callPackageWith (pkgs // newpkgs); newpkgs = { mattermost = callPackage ./mattermost {inherit sources;}; tracktrain = import sources.tracktrain { nixpkgs = pkgs; compiler = "default"; }; # a version of the lounge with some extra css that # hides things the hacc-voc doesn't need thelounge = pkgs.stdenv.mkDerivation { name = "thelounge-hacked"; src = pkgs.thelounge; phases = [ "buildPhase" "installPhase" ]; buildPhase = '' cp $src/* -r . chmod 777 lib/node_modules/thelounge/public/css/style.css cat ${./thelounge/css-patch.css} >> lib/node_modules/thelounge/public/css/style.css ''; installPhase = '' mkdir -p $out cp * -r $out ''; }; uffd = oldstable.callPackage ./uffd { }; netbox = pkgs.netbox.override (super: rec { python3 = super.python3.override (oldpy: { packageOverrides = self: super: { social-auth-core = super.social-auth-core.overrideAttrs ( old: { name = "social-auth-with-uffd"; patches = [ ./netbox/0001-add-uffd-oauth2-backend.patch ]; }); }; }); }); inherit (oldstable) uwsgi flask; }; in pkgs.extend(_: _: newpkgs)