{"id":22870223,"url":"https://github.com/dadav/jsonnet-bundler-ng","last_synced_at":"2025-03-31T11:26:00.549Z","repository":{"id":212265852,"uuid":"730734322","full_name":"dadav/jsonnet-bundler-ng","owner":"dadav","description":"A jsonnet package manager.","archived":false,"fork":false,"pushed_at":"2023-12-16T18:55:40.000Z","size":1884,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-02-06T16:57:55.375Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"jsonnet-bundler/jsonnet-bundler","license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dadav.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":"2023-12-12T14:59:34.000Z","updated_at":"2023-12-15T23:49:01.000Z","dependencies_parsed_at":null,"dependency_job_id":"c0dd1f78-e0ec-4a85-8e6f-c4d4cea03d69","html_url":"https://github.com/dadav/jsonnet-bundler-ng","commit_stats":null,"previous_names":["dadav/jsonnet-bundler"],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dadav%2Fjsonnet-bundler-ng","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dadav%2Fjsonnet-bundler-ng/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dadav%2Fjsonnet-bundler-ng/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dadav%2Fjsonnet-bundler-ng/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dadav","download_url":"https://codeload.github.com/dadav/jsonnet-bundler-ng/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246460252,"owners_count":20781072,"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":[],"created_at":"2024-12-13T13:14:12.641Z","updated_at":"2025-03-31T11:26:00.528Z","avatar_url":"https://github.com/dadav.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# jsonnet-bundler-ng\n\nThe jsonnet-bundler-ng is a fork of [jsonnet-bundler](https://github.com/jsonnet-bundler/jsonnet-bundler),\na package manager for [jsonnet](https://jsonnet.org/).\n\n## Install\n\n```\ngo install -a github.com/dadav/jsonnet-bundler-ng/cmd/jb-ng@latest\n```\n\n## Package Install\n\n- [Arch Linux AUR](https://aur.archlinux.org/packages/jsonnet-bundler-ng-bin)\n\n## Features\n\n- Fetches transitive dependencies\n- Can vendor subtrees, as opposed to whole repositories\n\n## Current Limitations\n\n- Always downloads entire dependent repositories, even when updating\n- If two dependencies depend on the same package (diamond problem), they must require the same version\n\n## Example Usage\n\nInitialize your project:\n\n```sh\nmkdir myproject\ncd myproject\njb-ng init\n```\n\nThe existence of the `jsonnetfile.json` file means your directory is now a\njsonnet-bundler package that can define dependencies.\n\nTo depend on another package (another Github repository):\n_Note that your dependency need not be initialized with a `jsonnetfile.json`.\nIf it is not, it is assumed it has no transitive dependencies._\n\n```sh\njb-ng install https://github.com/anguslees/kustomize-libsonnet\n```\n\nNow write `myconfig.jsonnet`, which can import a file from that package.\nRemember to use `-J vendor` when running Jsonnet to include the vendor tree.\n\n```jsonnet\nlocal kustomize = import 'kustomize-libsonnet/kustomize.libsonnet';\n\nlocal my_resource = {\n  metadata: {\n    name: 'my-resource',\n  },\n};\n\nkustomize.namePrefix('staging-')(my_resource)\n```\n\nTo depend on a package that is in a subtree of a Github repo (this package also\nhappens to bring in a transitive dependency):\n\n```sh\njb-ng install https://github.com/prometheus-operator/prometheus-operator/jsonnet/prometheus-operator\n```\n\n_Note that if you are copy pasting from the Github website's address bar,\nremove the `tree/master` from the path._\n\nIf pushed to Github, your project can now be referenced from other packages in\nthe same way, with its dependencies fetched automatically.\n\n## All command line flags\n\n```bash\nusage: jb-ng [\u003cflags\u003e] \u003ccommand\u003e [\u003cargs\u003e ...]\n\nA jsonnet package manager\n\nFlags:\n  -h, --help     Show context-sensitive help (also try --help-long and\n                 --help-man).\n      --version  Show application version.\n      --jsonnetpkg-home=\"vendor\"\n                 The directory used to cache packages in.\n  -q, --quiet    Suppress any output from git command.\n\nCommands:\n  help [\u003ccommand\u003e...]\n    Show help.\n\n  init\n    Initialize a new empty jsonnetfile\n\n  registry add [\u003cname\u003e] [\u003cdescription\u003e] [\u003curl\u003e] [\u003cfile\u003e]\n    Add a new registry\n\n  registry rm [\u003cname\u003e]\n    Remove a registry\n\n  registry update\n    Update registry data\n\n  registry list\n    List registries\n\n  registry search [\u003cflags\u003e] [\u003cquery\u003e]\n    Search package in registries\n\n  install [\u003cflags\u003e] [\u003curis\u003e...]\n    Install new dependencies. Existing ones are silently skipped\n\n  update [\u003curis\u003e...]\n    Update all or specific dependencies.\n\n  rewrite\n    Automatically rewrite legacy imports to absolute ones\n```\n\n## Design\n\nThis is an implemention of the design specified in this document: https://docs.google.com/document/d/1czRScSvvOiAJaIjwf3CogOULgQxhY9MkiBKOQI1yR14/edit#heading=h.upn4d5pcxy4c\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdadav%2Fjsonnet-bundler-ng","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdadav%2Fjsonnet-bundler-ng","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdadav%2Fjsonnet-bundler-ng/lists"}