{"id":27916753,"url":"https://github.com/waylonwalker/nvim-manager","last_synced_at":"2025-05-06T16:39:43.307Z","repository":{"id":271444416,"uuid":"913472647","full_name":"WaylonWalker/nvim-manager","owner":"WaylonWalker","description":"manage dotfiles with nvim_appname","archived":false,"fork":false,"pushed_at":"2025-02-10T17:50:40.000Z","size":26,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-05-04T02:28:05.010Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/WaylonWalker.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2025-01-07T18:48:16.000Z","updated_at":"2025-02-10T17:50:32.000Z","dependencies_parsed_at":"2025-01-07T20:21:42.559Z","dependency_job_id":null,"html_url":"https://github.com/WaylonWalker/nvim-manager","commit_stats":null,"previous_names":["waylonwalker/nvim-manager"],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WaylonWalker%2Fnvim-manager","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WaylonWalker%2Fnvim-manager/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WaylonWalker%2Fnvim-manager/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WaylonWalker%2Fnvim-manager/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/WaylonWalker","download_url":"https://codeload.github.com/WaylonWalker/nvim-manager/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252721993,"owners_count":21793938,"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":"2025-05-06T16:39:40.888Z","updated_at":"2025-05-06T16:39:43.296Z","avatar_url":"https://github.com/WaylonWalker.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# nvim-manager\n\nnvim-manager manages Neovim configurations by leveraging `NVIM_APPNAME` and\nputting your dotfiles configuration in `~/.config/nvim/`.\n\n## Why\n\nYour dotfiles change a lot, sometimes it's hard to manage all of the places you\nhave installed them and potentially made hand edits to.  `nvim-manager` allows\nyou to easily make static releases of your dotfiles, and keep your nvim install\nfrom breaking by leveraging `NVIM_APPNAME` and pinned releases of your dotfiles\nstored in `~/.config`.  In this directory you might have many nvim\nconfigurations installed, `nvim-manager` automates the process of installing\nand updating from your dotfiles, while keeping previous pinned versions untouched.\n\n``` bash\n~/.config\n    ├── nvim # default nvim directory\n    ├── lazyvim # another nvim distribution\n    ├── nvim-waylonwalker-0.0.1 # pinned release managed by nvim-manager\n    ├── nvim-waylonwalker-0.0.2 # pinned release managed by nvim-manager\n    └── nvim-waylonwalker-0.0.3 # pinned release managed by nvim-manager\n```\n\n## Installation\n\nYou can install nvim-manager using one of these methods:\n\n\u003e !nvim-manager note requires [uv](https://docs.astral.sh/uv/getting-started/installation/) to be installed\n\n### Using i.jpillora.com (recommended)\n\n```bash\ncurl https://i.jpillora.com/waylonwalker/nvim-manager | bash\n```\n\n### Direct install script\n\n```bash\n# Download and run the latest install script\ncurl -fsSL https://github.com/waylonwalker/nvim-manager/releases/latest/download/install.sh | bash\n```\n\n### Manual download\n\nYou can also manually download the archive for your platform from the releases page:\n\n- [x86_64-unknown-linux-gnu](https://github.com/waylonwalker/nvim-manager/releases/download/v{version}/nvim-manager-{version}-x86_64-unknown-linux-gnu.tar.gz)\n- [aarch64-unknown-linux-gnu](https://github.com/waylonwalker/nvim-manager/releases/download/v{version}/nvim-manager-{version}-aarch64-unknown-linux-gnu.tar.gz)\"\"\"\n\n## Setup\n\n`nvim-manager` is a command-line tool for managing Neovim configurations ran\nwith [uv](https://docs.astral.sh/uv/getting-started/installation/).\n\n```bash\n# Add the following lines to your .bashrc or .zshrc\n\n# Your dotfiles repository\nexport NVIM_MANAGER_REPO=https://github.com/WaylonWalker/devtainer\n\n# path to your nvim configuration inside the dotfiles repository\nexport NVIM_CONFIG_PATH=nvim/.config/nvim\n\n# Where to install your configuration\n# Using `~/.config` by default allows you to use NVIM_APPNAME\nexport NVIM_MANAGER_INSTALL_DIR=$HOME/.config\n\n# Prefix name for your configuration\nexport NVIM_MANAGER_PREFIX=\"nvim-waylonwalker-\"\n\n# current version that you want to open nvim with\nexport NVIM_APPNAME=$NVIM_MANAGER_PREFIX-0.0.1\n```\n\n## Command Line Usage\n\n### Main Command\n\n```\n                                                                                                                                                                                                                                       \n Usage: nvim-manager.py [OPTIONS] COMMAND [ARGS]...                                                                                                                                                                                    \n                                                                                                                                                                                                                                       \n nvim-manager manages Neovim configurations by leveraging NVIM_APPNAME.                                                                                                                                                                \n                                                                                                                                                                                                                                       \n╭─ Options ───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮\n│ --list                -l        List available versions                                                                                                                                                                             │\n│ --version             -v        Show version                                                                                                                                                                                        │\n│ --install-completion            Install completion for the current shell.                                                                                                                                                           │\n│ --show-completion               Show completion for the current shell, to copy it or customize the installation.                                                                                                                    │\n│ --help                          Show this message and exit.                                                                                                                                                                         │\n╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯\n╭─ Commands ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮\n│ list      List available tags/branches and highlight installed ones.                                                                                                                                                                │\n│ install   Install a specific version of Neovim configuration by tag or branch.                                                                                                                                                      │\n│ update    Update a specific version by reinstalling it.                                                                                                                                                                             │\n│ version   Show the version of nvim-manager.                                                                                                                                                                                         │\n╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯\n\n```\n\n### Subcommand: install\n\n```\n                                                                                                                                                                                                                                       \n Usage: nvim-manager.py install [OPTIONS] [VERSION]                                                                                                                                                                                    \n                                                                                                                                                                                                                                       \n Install a specific version of Neovim configuration by tag or branch.                                                                                                                                                                  \n Example: NVIM_APPNAME=waylonwalker-nvim-0.0.1 nvim                                                                                                                                                                                    \n                                                                                                                                                                                                                                       \n╭─ Arguments ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮\n│   version      [VERSION]  Version to install [default: None]                                                                                                                                                                        │\n╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯\n╭─ Options ───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮\n│ --distro               TEXT  Install a specific Neovim distribution [default: None]                                                                                                                                                 │\n│ --pick                       Fuzzy pick a version to install                                                                                                                                                                        │\n│ --pick-distro                Fuzzy pick a distro to install                                                                                                                                                                         │\n│ --repo-url             TEXT  Git repository URL [default: None]                                                                                                                                                                     │\n│ --config-path          TEXT  Path to nvim config in repository [default: None]                                                                                                                                                      │\n│ --prefix               TEXT  Prefix for the installation directory [default: None]                                                                                                                                                  │\n│ --force        -f            Force install even if already exists                                                                                                                                                                   │\n│ --help                       Show this message and exit.                                                                                                                                                                            │\n╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯\n\n```\n\n### Subcommand: list\n\n```\n                                                                                                                                                                                                                                       \n Usage: nvim-manager.py list [OPTIONS]                                                                                                                                                                                                 \n                                                                                                                                                                                                                                       \n List available tags/branches and highlight installed ones.                                                                                                                                                                            \n                                                                                                                                                                                                                                       \n╭─ Options ───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮\n│ --distro        TEXT  List versions for a specific Neovim distribution [default: None]                                                                                                                                              │\n│ --help                Show this message and exit.                                                                                                                                                                                   │\n╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯\n\n```\n\n### Subcommand: update\n\n```\n                                                                                                                                                                                                                                       \n Usage: nvim-manager.py update [OPTIONS] VERSION                                                                                                                                                                                       \n                                                                                                                                                                                                                                       \n Update a specific version by reinstalling it.                                                                                                                                                                                         \n Args:     version: The version to update                                                                                                                                                                                              \n                                                                                                                                                                                                                                       \n╭─ Arguments ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮\n│ *    version      TEXT  [default: None] [required]                                                                                                                                                                                  │\n╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯\n╭─ Options ───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮\n│ --help          Show this message and exit.                                                                                                                                                                                         │\n╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯\n\n```\n\n### Subcommand: version\n\n```\n                                                                                                                                                                                                                                       \n Usage: nvim-manager.py version [OPTIONS]                                                                                                                                                                                              \n                                                                                                                                                                                                                                       \n Show the version of nvim-manager.                                                                                                                                                                                                     \n                                                                                                                                                                                                                                       \n╭─ Options ───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮\n│ --help          Show this message and exit.                                                                                                                                                                                         │\n╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯\n\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwaylonwalker%2Fnvim-manager","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwaylonwalker%2Fnvim-manager","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwaylonwalker%2Fnvim-manager/lists"}