Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/ciiqr/nk

configuration management for developers (nicky)
https://github.com/ciiqr/nk

nk

Last synced: 11 days ago
JSON representation

configuration management for developers (nicky)

Awesome Lists containing this project

README

        

# nk

configuration management for developers

## install

- Install nk

```bash
curl -fsSL https://raw.githubusercontent.com/ciiqr/nk/HEAD/install.sh | bash
```

- Add to path

_append to your `~/.zprofile` or `~/.bash_profile`/`~/.bashrc` to make this permanent_

```bash
export PATH="${HOME}/.nk/bin:${PATH}"
```

## install (windows)

- Install nk (via powershell)

```powershell
Set-ExecutionPolicy Bypass -Scope Process -Force
Invoke-Expression ((New-Object System.Net.WebClient).DownloadString(
'https://raw.githubusercontent.com/ciiqr/nk/HEAD/install.ps1'
))
```

- Add to path

_for current session only, install script already updated user path which will be used for new sessions_

```powershell
$env:Path = "${HOME}/.nk/bin" + [IO.Path]::PathSeparator + $env:Path
```

## setup

- Create nk config `./.nk.yml`


```yaml
sources:
- .
plugins:
- ciiqr/nk-plugins
```

- Create state config ie. `config.yml` (any `*.yml` except dotfiles `.*.yml`)


```yaml
when: os == "macos"

packages:
- homebrew/cask/google-chrome
```

- Provision state

```bash
nk provision
```

## local development

- install dependencies and configure hooks (macos only atm, read script to figure out commands for other platforms)

```bash
./bin/dev setup
```

## resources

- plugins: [ciiqr/nk-plugins](https://github.com/ciiqr/nk-plugins)
- example config: [ciiqr/dotfiles](https://github.com/ciiqr/dotfiles)