{"id":16506017,"url":"https://github.com/fredrikekre/jlpkg","last_synced_at":"2025-04-06T10:13:29.396Z","repository":{"id":41955223,"uuid":"184582654","full_name":"fredrikekre/jlpkg","owner":"fredrikekre","description":"A command line interface (CLI) for Pkg, Julia's package manager.","archived":false,"fork":false,"pushed_at":"2024-11-06T10:28:32.000Z","size":79,"stargazers_count":93,"open_issues_count":2,"forks_count":4,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-03-30T09:07:39.314Z","etag":null,"topics":["cli","julia","package-manager"],"latest_commit_sha":null,"homepage":"","language":"Julia","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/fredrikekre.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","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},"funding":{"github":"fredrikekre","custom":"paypal.me/fredrikekre"}},"created_at":"2019-05-02T13:06:27.000Z","updated_at":"2025-01-27T12:11:24.000Z","dependencies_parsed_at":"2024-12-24T04:18:12.239Z","dependency_job_id":"531d4134-5a7f-4c73-bd18-e30c336268d9","html_url":"https://github.com/fredrikekre/jlpkg","commit_stats":{"total_commits":98,"total_committers":3,"mean_commits":"32.666666666666664","dds":"0.020408163265306145","last_synced_commit":"53fa79d1ea1547a9e7b14dded3d5742c43f05f82"},"previous_names":[],"tags_count":19,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fredrikekre%2Fjlpkg","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fredrikekre%2Fjlpkg/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fredrikekre%2Fjlpkg/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fredrikekre%2Fjlpkg/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fredrikekre","download_url":"https://codeload.github.com/fredrikekre/jlpkg/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247464223,"owners_count":20942970,"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":["cli","julia","package-manager"],"created_at":"2024-10-11T15:15:24.596Z","updated_at":"2025-04-06T10:13:29.368Z","avatar_url":"https://github.com/fredrikekre.png","language":"Julia","funding_links":["https://github.com/sponsors/fredrikekre","paypal.me/fredrikekre"],"categories":[],"sub_categories":[],"readme":"# jlpkg\n\n| **Build Status**                                        |\n|:------------------------------------------------------- |\n| [![CI][ci-img]][ci-url] [![][codecov-img]][codecov-url] |\n\nA command line interface (CLI) to [Pkg][pkg-url], Julia's package manager.\n\n## Usage\n\nOutput of `jlpkg --help`:\n```\n$ jlpkg --help\nNAME\n       jlpkg - command line interface (CLI) to Pkg, Julia's package manager\n\nSYNOPSIS\n       jlpkg [--options] \u003cpkg-cmds\u003e...\n\nOPTIONS\n       \u003cpkg-cmds\u003e...\n           Commands to the Pkg REPL mode. Execute the `help` command\n           (e.g. `jlpkg help`) to list all available commands, and execute\n           `jlpkg ?cmd` (or `jlpkg help cmd`) to show detailed help for a\n           specific command. See https://julialang.github.io/Pkg.jl/v1/repl/\n           for documentation of the syntax and the available commands.\n\n       --project[=\u003cpath\u003e]\n           Set the home project/environment.\n           Equivalent to Julia's `--project` switch.\n\n       --julia=\u003cpath\u003e\n           Specify path to, or command for, the Julia executable.\n           Overrides the executable set when installing the CLI.\n\n       --update\n           Allow the subsequent commands to update package registries.\n\n       --offline\n           Enable Pkg's offline mode (requires Julia 1.5 or later).\n\n       --version\n           Show jlpkg and julia version numbers.\n\n       --help\n           Show this message.\n\nEXAMPLES\n       · Add the Example package to the package environment located at `path`:\n           $ jlpkg --project=path add Example\n\n       · Update package registries and add the JSON package:\n           $ jlpkg --update add JSON\n\n       · Show the help for the `add` Pkg REPL command:\n           $ jlpkg ?add\n```\n\n## Installation\n\nThere are number of ways to install `jlpkg`:\n - [Installation from Julia](#Installation-from-Julia)\n - [Installation from tarball](#Installation-from-tarball)\n - [Installation using asdf](#Installation-using-asdf)\n\n### Installation from Julia\n\nFirst install `jlpkg` from the Pkg REPL:\n```\npkg\u003e add jlpkg\n```\nthen install the command line interface with\n```julia\njulia\u003e import jlpkg; jlpkg.install()\n```\nFor available configuration, see the documentation for `jlpkg.install`,\ne.g. from the Julia REPL:\n```\nhelp?\u003e jlpkg.install\n\n    jlpkg.install(; kwargs...)\n\nInstall the command line interface.\n\nKeyword arguments:\n\n · command: name of the executable command, defaults to jlpkg.\n\n · julia: path to julia executable, defaults to the path of the current running julia.\n\n · destdir: writable directory (available in PATH) for the executable,\n   defaults to ~/.julia/bin.\n\n · julia_flags: vector with command line flags for the julia executable,\n   defaults to [\"--color=yes\", \"--startup-file=no\", \"-q\", \"--compile=min\", \"-O0\"]\n\n · force: boolean used to overwrite any existing commands.\n```\n\n#### Install shell completion\n\n`jlpkg` supports Bash shell completion. This can be installed by using `jlpkg.install_completion`:\n```julia\njulia\u003e jlpkg.install_completion()\n```\nFor available configuration, see the documentation for `jlpkg.install_completion`:\n```\nhelp?\u003e jlpkg.install_completion\n\n    jlpkg.install_completion(; kwargs...)\n\nInstall shell completion for jlpkg. Currently only bash completion is supported.\n\nKeyword arguments:\n\n · command: name of the executable command to be completed, defaults to jlpkg.\n\n · destdir: writable directory to place the completion file in, defaults to ~/.bash_completion.d.\n\n · rcfile: shell startup file to source the completion file in, defaults to ~/.bashrc.\n   If you want to handle sourcing yourself, use rcfile=nothing.\n\n · force: boolean used to overwrite an existing completion file.\n```\n\n### Installation from tarball\n\nIt is possible to download and extract a prebuilt script with default settings.\nFor example, to download the latest release you can run the following\n```bash\ncurl -fsSL https://github.com/fredrikekre/jlpkg/releases/download/v1.6.0/jlpkg-v1.6.0.tar.gz | \\\n    tar -xzC /usr/local/bin\n```\nThis will extract the executable script `jlpkg` and place it in `/usr/local/bin`.\nYou can of course replace `/usr/local/bin` with any writable folder in your `PATH`.\nWhen using the prebuilt script it is assumed that `julia` is also in your `PATH`.\n\nThe Bash completion file can also be downloaded from the repo. For example:\n```bash\ncurl -fsSL -o ~/.bash_completion.d/jlpkg-completion.bash \\\n    https://raw.githubusercontent.com/fredrikekre/jlpkg/v1.6.0/src/jlpkg-completion.bash\n```\nMake sure to source this file in your shell startup file. For example, add the following to `~/.bashrc`:\n```bash\n# Bash completion for jlpkg\nif [[ -f ~/.bash_completion.d/jlpkg-completion.bash ]]; then\n    . ~/.bash_completion.d/jlpkg-completion.bash\nfi\n```\n\n### Installation using `asdf`\n\nIt is possible to install `jlpkg` using the [`asdf` version manager](https://asdf-vm.com) using the\n[`asdf-jlpkg`](https://github.com/fredrikekre/asdf-jlpkg) plugin. See the plugin\n[README](https://github.com/fredrikekre/asdf-jlpkg/blob/master/README.md) for instructions.\n\n\n[pkg-url]: https://github.com/JuliaLang/Pkg.jl\n\n[ci-url]: https://github.com/fredrikekre/jlpkg/actions/workflows/ci.yml\n[ci-img]: https://github.com/fredrikekre/jlpkg/actions/workflows/ci.yml/badge.svg\n\n[codecov-img]: https://codecov.io/gh/fredrikekre/jlpkg/branch/master/graph/badge.svg\n[codecov-url]: https://codecov.io/gh/fredrikekre/jlpkg\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffredrikekre%2Fjlpkg","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffredrikekre%2Fjlpkg","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffredrikekre%2Fjlpkg/lists"}