{ description = "A Collection Of Nix Utilities"; inputs = { nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; }; outputs = { self, nixpkgs }: { writePythonApplication = {name, contentFile}: let wrappedScript = pkgs.writeText "wrappedScript" (builtins.readFile contentFile); in pkgs.writeShellApplication { name = name; runtimeInputs = [ wrappedScript pkgs.python311]; text = '' exec ${pkgs.python38}/bin/python ${wrappedScript} "$@" ''; }; writeBabashkaApplication = {name, contentFile}: let wrappedScript = pkgs.writeText "wrappedScript" (builtins.readFile contentFile); in pkgs.writeShellApplication { name = name; runtimeInputs = [ wrappedScript pkgs.babashka]; text = '' exec ${pkgs.babashka}/bin/bb ${wrappedScript} "$@" ''; }; }; }