# tools This repository contains latest version of useful utilities with patches that not included in official repositories. # Usage ## As package ```sh nix build git+https://git.pleshevski.ru/mynix/tools# ``` ## As one-time executable application ```sh nix run git+https://git.pleshevski.ru/mynix/tools# ``` ## Using nix-profile ```sh nix profile install git+https://git.pleshevski.ru/mynix/tools# ``` ## As overlay for your flake ``` { inputs.tools.url = "git+https://git.pleshevski.ru/mynix/tools"; outputs = { nixpkgs, tools }: let system = builtins.currentSystem; overlays = [ tools.overlays.all ]; pkgs = import nixpkgs { inherit system overlays; }; in { devShells = { default = pkgs.mkShell { # now you can use any tools packages = with pkgs; [ d2 ]; }; }; }; } ``` > **Note**: For short this url (`git+https://git.pleshevski.ru/mynix/tools`) will be truncated to `.` in the document. # d2 _D2 is a modern diagram scripting language that turns text to diagrams._ References: - [https://d2lang.com](https://d2lang.com) - [https://github.com/terrastruct/d2](https://github.com/terrastruct/d2) **d2**: Base d2 cli tool ``` nix run .#d2 -- --help ``` **[UNFREE]** **d2full**: Full d2 cli tool with d2plugin-tala ``` NIXPKGS_ALLOW_UNFREE=1 nix run --impure .#d2full -- --help ``` **[UNFREE]** **d2plugin-tala**: A diagram layout engine designed specifically for software architecture diagrams ``` NIXPKGS_ALLOW_UNFREE=1 nix run --impure .#d2full -- --help ```