{ inputs.nixpkgs.url = "github:NixOS/nixpkgs/release-22.11"; description = "Packages pin"; outputs = { self, nixpkgs, syndicate }: let inherit (nixpkgs) lib; in { overlays.default = final: prev: { tup = let tup' = prev.tup.overrideAttrs ({ patches ? [ ], ... }: { patches = patches ++ [ ./tup.patch ]; }); in with final; writeScriptBin "tup" '' export PATH=${lib.makeBinPath [ coreutils direnv gitMinimal nix ]} exec ${tup'}/bin/tup $@ ''; }; legacyPackages = lib.mapAttrs (_: { extend, ... }: extend self.overlays.default) nixpkgs.legacyPackages; packages = lib.mapAttrs (_: pkgs: { inherit (pkgs) tup; }) self.legacyPackages; devShells = lib.mapAttrs (_: pkgs: with pkgs.extend self.overlays.default; { default = mkShell { packages = [ ccacheWrapper gdb tup ]; }; nim = mkShell { packages = [ ccacheWrapper nim-unwrapped nodejs openssl solo5 ]; }; battery_actor = mkShell { packages = [ libnl pkg-config ]; }; config = mkShell { packages = [ gnused ]; }; eris = mkShell { packages = [ getdns pkg-config solo5 tkrzw ]; }; gemlog = mkShell { packages = [ dhall ]; }; getdns = mkShell { packages = [ getdns pkg-config ]; }; libnl = let libnl' = libnl.overrideAttrs ({ configureFlags ? [ ], ... }: { configureFlags = configureFlags ++ [ "--enable-debug" ]; }); in mkShell { packages = [ libnl' pkg-config ]; }; libnotify_actor = mkShell { packages = [ libnotify pkg-config ]; }; nix_actor = mkShell { packages = [ boost nix pkg-config ]; }; movement = mkShell { packages = [ emscripten gcc-arm-embedded python3Minimal ]; }; simplex_history_actor = mkShell { packages = [ pkg-config sqlcipher ]; }; zua = mkShell { packages = [ fontconfig pkg-config SDL2 ]; }; }) nixpkgs.legacyPackages; }; }