forked from colonelpanic/dotfiles
[XMonad] Use nix for xmonad build script
This commit is contained in:
@@ -1,32 +1,11 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
function min {
|
||||
[ $1 -le $2 ] && echo "$1" || echo "$2"
|
||||
}
|
||||
|
||||
function get_exe_dir {
|
||||
# XXX: This exists because calling in to stack is kind of slow with nix
|
||||
# integration enabled, even when just using it to get a path.
|
||||
if [ -e ./.cached-stack-install-path ]; then
|
||||
cat .cached-stack-install-path
|
||||
else
|
||||
stack path --local-install-root
|
||||
fi
|
||||
}
|
||||
|
||||
SRC_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
||||
|
||||
EXE_NAME=imalison-xmonad
|
||||
EXE_LOCATION=$(get_exe_dir)/bin/$EXE_NAME
|
||||
output_file=$1; shift
|
||||
|
||||
if [ -e ./.cached-stack-install-path ]; then
|
||||
last_built=$(stat -c '%Y' $EXE_LOCATION)
|
||||
xmonad_modified=$(stat -c '%Y' ./xmonad.hs)
|
||||
|
||||
[ $last_built -lt $xmonad_modified ] && stack install
|
||||
else
|
||||
stack install
|
||||
fi
|
||||
|
||||
cp -uf $EXE_LOCATION $output_file
|
||||
cd "$SRC_DIR"
|
||||
exe_location="$SRC_DIR/result/bin/imalison-xmonad"
|
||||
nix-build
|
||||
echo "$exe_location" "$output_file" > did_build
|
||||
cp -f "$exe_location" "$output_file"
|
||||
|
Reference in New Issue
Block a user