Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/astraluma/unholy
The unholy union of docker compose, neovim, and neovide
https://github.com/astraluma/unholy
dev-container dev-containers docker docker-compose neovide neovim
Last synced: 25 days ago
JSON representation
The unholy union of docker compose, neovim, and neovide
- Host: GitHub
- URL: https://github.com/astraluma/unholy
- Owner: AstraLuma
- Created: 2023-02-17T06:02:23.000Z (over 1 year ago)
- Default Branch: trunk
- Last Pushed: 2023-12-09T01:17:28.000Z (11 months ago)
- Last Synced: 2024-10-03T08:07:10.900Z (about 1 month ago)
- Topics: dev-container, dev-containers, docker, docker-compose, neovide, neovim
- Language: Python
- Homepage: https://unholy.readthedocs.io/
- Size: 120 KB
- Stars: 3
- Watchers: 1
- Forks: 1
- Open Issues: 17
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# unholy
Cooperates with Docker Compose, injects an nvim-based container
into it, and connects neovide to it.You can call it what you'd like, but I'm going to call this union `unholy`.
## Requirements
- Unholy itself (I suggest using [pipx](https://pypa.github.io/pipx/))
- Git
- The Docker CLI
- socat
- [Neovide](https://neovide.dev/)## Usage
1. Commit an Unholyfile to your repo (see below)
2. Run `unholy new `
3. Work on your project using `unholy shell` and `unholy neovide`Use `unholy remake` to rebuild your development environment without
re-cloning your repo or touching your work.Note: By default, the name of the Unholy project is the repo name.
## Unholyfile
A major aspect of unholy is the Unholyfile. It is a script with
[TOML](https://toml.io/en/) head matter, like so:```
---
[dev]
image="python"
---
pip install pytest
```The complete headmatter schema is loosely documented in
[core.Unholyfile](https://github.com/AstraLuma/unholy/blob/trunk/unholy/core.Unholyfile).The script supports a `#!`, defaulting to `#!/bin/sh`
If you specify a non-default image, it must be Debian-based.
## Additional config
Local configuration (including project definitions) are stored in the XDG
Config directory (default `~/.config/unholy`).There is a global `~/.config/unholy/Unholy` applied to all projects. This is
an excellent place for personal settings (like utilities you like or nvim
configuration).Each project gets an `~/.config/.Unholyfile` where unholy keeps git and
Docker settings. You can add some local project overrides here.