all repos — dotfiles @ 9689c8d78ba688312f01bc493f75743e6528ba33

my *nix dotfiles

bin/nim-proj (view raw)

 1
 2
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
#!/usr/bin/env bash

# nim-proj.sh: initializes 

help() {
	echo "Usage:"
	echo "nim-proj <name> <description>"
}

if [ $# -eq 2 ]; then
	nimble init $1
	cd $1
	
	cat <<- EOF > readme.md
	# $1
	> $2
	EOF
	
	cat <<- "EOF" > .travis.yml
	language: c
	
	cache: ccache
	cache:
	    directories:
	        - .cache
	
	matrix:
	    include:
	        - os: linux
	          env: CHANNEL=stable
	          compiler: gcc
	
	        - os: linux
	          env: CHANNEL=devel
	          compiler: gcc
	
	        - os: osx
	          env: CHANNEL=stable
	          compiler: clang
	
	    allow_failures:
	        - env: CHANNEL=devel
	        - os: osx
	
	    fast_finish: true
	
	env:
	    global:
	        - PROGNAME="$(basename ${TRAVIS_BUILD_DIR})"
	        - NIMFILE="src/${PROGNAME}.nim"
	        - BINFILE="src/${PROGNAME}"
	        - ASSETFILE="${PROGNAME}-${TRAVIS_TAG}-linux64"
	
	install:
	    - export CHOOSENIM_NO_ANALYTICS=1
	    - curl https://nim-lang.org/choosenim/init.sh -sSf > init.sh
	    - sh init.sh -y
	    - export PATH=~/.nimble/bin:$PATH
	    - echo "export PATH=~/.nimble/bin:$PATH" >> ~/.profile
	    - choosenim $CHANNEL
	
	script:
	    - cd "${TRAVIS_BUILD_DIR}"
	    - nim c "${NIMFILE}" 
	    - "${BINFILE}" 
	
	before_deploy:
	    - cd "${TRAVIS_BUILD_DIR}"
	    - cp "${BINFILE}" "${ASSETFILE}"
	deploy:
	    provider: releases
	    api_key: "${GITHUB_OAUTH_TOKEN}"
	    file: "${ASSETFILE}"
	    skip_cleanup: true
	    on:
	    tags: true	
	EOF

	git init
else
	help
fi