diff options
| -rw-r--r-- | .gitignore | 1 | ||||
| -rw-r--r-- | Gupfile | 4 | ||||
| -rwxr-xr-x | all.gup | 16 | ||||
| -rwxr-xr-x | gup/cabal2nix.sh | 6 |
4 files changed, 27 insertions, 0 deletions
| @@ -4,3 +4,4 @@ | |||
| 4 | **/dist/ | 4 | **/dist/ |
| 5 | **/.cabal-sandbox | 5 | **/.cabal-sandbox |
| 6 | /thermoprint.sqlite | 6 | /thermoprint.sqlite |
| 7 | **/.gup/ | ||
| @@ -0,0 +1,4 @@ | |||
| 1 | gup/cabal2nix.sh: | ||
| 2 | !./default.nix | ||
| 3 | !./shell.nix | ||
| 4 | **/*.nix \ No newline at end of file | ||
| @@ -0,0 +1,16 @@ | |||
| 1 | #!/usr/bin/env zsh | ||
| 2 | |||
| 3 | setopt EXTENDED_GLOB | ||
| 4 | |||
| 5 | typeset -a nixFiles | ||
| 6 | nixFiles=(**/(*~(default|shell)).nix(N)) | ||
| 7 | |||
| 8 | for f (${nixFiles}); do | ||
| 9 | [[ -e ${f:r}.cabal ]] && continue | ||
| 10 | nixFiles=("${(@)nixFiles:#${f}}") | ||
| 11 | done | ||
| 12 | |||
| 13 | print -l ${nixFiles} | gup --contents | ||
| 14 | for f (${nixFiles}); do | ||
| 15 | gup -u ${f} | ||
| 16 | done | ||
diff --git a/gup/cabal2nix.sh b/gup/cabal2nix.sh new file mode 100755 index 0000000..ba23c4e --- /dev/null +++ b/gup/cabal2nix.sh | |||
| @@ -0,0 +1,6 @@ | |||
| 1 | #!/usr/bin/env zsh | ||
| 2 | |||
| 3 | gup -u ${2:r}.cabal | ||
| 4 | |||
| 5 | cd ${2:h} | ||
| 6 | cabal2nix ./. >! ${1} | ||
