{"id":22383349,"url":"https://github.com/crabdancing/nix-flamegraph","last_synced_at":"2025-06-12T08:04:13.233Z","repository":{"id":266444599,"uuid":"898363295","full_name":"crabdancing/nix-flamegraph","owner":"crabdancing","description":"Various primitive scripts cobbled together to produce an easy flamegraph of nix eval","archived":false,"fork":false,"pushed_at":"2024-12-04T22:04:34.000Z","size":10,"stargazers_count":6,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-13T03:17:42.386Z","etag":null,"topics":["benchmark","flamegraph","nix","nix-flake","nixos","profiling"],"latest_commit_sha":null,"homepage":"","language":"Nix","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"wtfpl","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/crabdancing.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-12-04T09:05:29.000Z","updated_at":"2025-04-09T02:13:56.000Z","dependencies_parsed_at":"2024-12-04T10:20:48.908Z","dependency_job_id":"a71eead1-cff8-4bcd-9f95-c62cc54a55dd","html_url":"https://github.com/crabdancing/nix-flamegraph","commit_stats":null,"previous_names":["crabdancing/nix-flamegraph"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/crabdancing%2Fnix-flamegraph","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/crabdancing%2Fnix-flamegraph/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/crabdancing%2Fnix-flamegraph/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/crabdancing%2Fnix-flamegraph/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/crabdancing","download_url":"https://codeload.github.com/crabdancing/nix-flamegraph/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248657912,"owners_count":21140846,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["benchmark","flamegraph","nix","nix-flake","nixos","profiling"],"created_at":"2024-12-05T01:13:18.044Z","updated_at":"2025-04-13T03:17:45.828Z","avatar_url":"https://github.com/crabdancing.png","language":"Nix","readme":"Semi-usable flamegraph generation for troubleshooting just _why_ your Nix code is so damn slow. This mostly just shows a useful visualization of the call stack, so that you can get an impression of which function is being called recursively five thousand times. :P\n\n# Usage\n\nHelp page:\n\n```\nnix run github:crabdancing/nix-flamegraph -- --help\n```\n\nProcess a flake (e.g.):\n\n\n```\nnix run github:crabdancing/nix-flamegraph -- -t /etc/nixos\n```\n\nYou just point it at a target, and it _hopefully_ prints out the path to an SVG. Internals are very jank. Results may vary.\n\nNote that it prints status info via STDERR, and the actual path via STDOUT. Therefore, it should be easy to extract the path for machine usage if desired. Alternatively, look at the `-o` flag for telling the script to dump your `SVG` to a given path. Note that it will error if path already exists with exit code 5.\n\n# Credits\n\nInternal script is mostly based on posts from [here](https://discourse.nixos.org/t/nix-flamegraph-or-profiling-tool/33333/11) cobbled together.\nYoinked `stack-collapse.py` from [here](https://raw.githubusercontent.com/NixOS/nix/master/contrib/stack-collapse.py), and made slight alterations (to pin Python version against flake deps).\n\n# License\n\nThis is basically just a bunch of templates \u0026 scripts cobbled together. The parts I contributed are too trivial to really be worthy of anything other than public domain. So, um, do whatever you want.","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcrabdancing%2Fnix-flamegraph","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcrabdancing%2Fnix-flamegraph","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcrabdancing%2Fnix-flamegraph/lists"}